AEM Forms Workspace コンポーネント を固有の Web アプリケーションで使用することができます。以下のサンプルの実装は、CRX™ インスタンスにインストールされた AEM Forms Workspace Dev パッケージのコンポーネントを使用して Web アプリケーションを作成します。下記のソリューションをカスタマイズして、個々のニーズに合わせます。サンプルの実装は、Web ポータル内部の UserInfoFilterList、および TaskList コンポーネントを再利用します。

  1. http://[サーバー]:[ポート]/lc/crx/de/ の CRXDE Lite 環境にログインします。AEM Forms Workspace Dev パッケージがインストールされていることを確認します。

  2. パス /apps/sampleApplication/wscomponents を作成します。

  3. css、images、js/libs、js/runtime、および js/registry.js を

    • /libs/ws から
    • /apps/sampleApplication/wscomponents へコピーします。
  4. /apps/sampleApplication/wscomponents/js フォルダー内部に demomain.js ファイルを作成します。コードを /libs/ws/js/main.js から demomain.js にコピーします。

  5. demomain.js で、コードを削除してルーターを初期化し、以下のコードを追加します。

    require(['initializer','runtime/util/usersession'], 
        function(initializer, UserSession) { 
            UserSession.initialize( 
                function() { 
                    // Render all the global components
                    initializer.initGlobal();  
                }); 
        });
  6. /content の下に名前 sampleApplication およびタイプ nt:unstructured のノードを作成します。このノードのプロパティで、タイプ文字列の sling:resourceType と値 sampleApplication を追加します。このノードのアクセス制御リストで、jcr:read 権限を許可する PERM_WORKSPACE_USER にエントリを追加します。また、/apps/sampleApplication のアクセス制御リストで、jcr:read privileges 権限を許可する PERM_WORKSPACE_USER のエントリを追加します。

  7. /apps/sampleApplication/wscomponents/js/registry.js で、テンプレート値のパスを /lc/libs/ws/ から /lc/apps/sampleApplication/wscomponents/ に更新します。

  8. /apps/sampleApplication/GET.jsp にあるポータルホームページの JSP ファイルで、次のコードを追加してポータル内部の必要なコンポーネントを含めます。

    <script data-main="/lc/apps/sampleApplication/wscomponents/js/demomain" src="/lc/apps/sampleApplication/wscomponents/js/libs/require/require.js"></script>
    <div class="UserInfoView gcomponent" data-name="userinfo"></div> 
    <div class="filterListView gcomponent" data-name="filterlist"></div> 
    <div class="taskListView gcomponent" data-name="tasklist"></div> 
    

    AEM Forms Workspace コンポーネントに必要な CSS ファイルも含めます。

    注意:

    各コンポーネントはレンダリングする際にコンポーネントタグ(クラス gcomponent を所有)に追加されます。ホームページにこれらのタグが含まれていることを確認します。これらの基本制御タグの詳細については、AEM Forms Workspace の html.jsp ファイルを参照してください。

  9. コンポーネントをカスタマイズするには、以下のように必要なコンポーネントの既存のビューを拡張します。

    define([ 
        ‘jquery’, 
        ‘underscore’, 
        ‘backbone’, 
        ‘runtime/views/userinfo'],
        function($, _, Backbone, UserInfo){ 
            var demoUserInfo = UserInfo.extend({ 
                //override the functions to customize the functionality 
                render: function() { 
                    UserInfo.prototype.render.call(this); // call the render function of the super class 
                    … 
                    //other tasks 
                    … 
                } 
            }); 
            return demoUserInfo; 
    });
  10. ポータルの CSS を修正し、ポータル上の必要なコンポーネントのレイアウト、配置、スタイルを設定します。たとえば、このポータルの背景色を黒色に保持して userInfo コンポーネントも同様に表示するとします。それには、以下のようにして /apps/sampleApplication/wscomponents/css/style.css の背景色を変更します。

    body {
        font-family: "Myriad pro", Arial;
        background: #000;    //This was origianlly #CCC    
        position: relative;
        margin: 0 auto;
    }

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー