プロファイルは、Apache Slingのリソースノードです。 HTML5フォームレンダリングサービスのカスタムバージョンを表します。 HTML5フォームレンダリングサービスを使用して、HTML5フォームの外観、動作、およびやりとりをカスタマイズできます。 プロファイルノードは、JCRリポジトリの/content
フォルダーに存在します。 ノードは/content
フォルダーの直下か、/content
フォルダーのサブフォルダーに配置できます。
Profile ノードには xfaforms/profile のデフォルト値を持つ sling:resourceSuperTypeプロパティがあります。ノードのレンダリングスクリプトは/libs/xfaforms/プロファイルにあります。
Sling スクリプトは JSP スクリプトです。JSP スクリプトは要求されたフォームと必要な JS / CSS アーティファクトの HTML を組み立てるためのコンテナとして機能します。これらの Sling スクリプトはプロファイルレンダラースクリプトとも呼ばれます。 プロファイルレンダラーは、要求されたフォームをレンダリングするためにFormsOSGiサービスを呼び出します。
プロファイルスクリプトは、GETおよびPOSTリクエストの場合、html.jspとhtml.POST.jspにあります。 これらのファイルをコピーして変更することで、上書きして独自のカスタマイズを追加できます。インプレースで変更を行わないでください。パッチの更新によって、このような変更が上書きされます。
プロファイルにはさまざまなモジュールが含まれています。これらのモジュールは、formRuntime.jsp、config.jsp、toolbar.jsp、formBody.jsp、nav_footer.jsp、および footer.jsp です。
formRuntime.jspモジュールには、クライアントライブラリの参照が含まれています。 これは、リクエストからロケール情報を抽出したし、ローカライズしたメッセージをリクエストに含めるなどのための方法も示します。formRuntime.jspには、独自のカスタムjavascriptライブラリまたはスタイルを含めることができます。
config.jsp モジュールには、ロギング、プロキシサービス、動作バージョンなど、さまあまな設定が含まれています。独自の設定およびウィジェットカスタマイズを config.jsp モジュールに追加することができます。config.jspモジュールにカスタムウィジェット登録などの設定を追加することもできます。
toolbar.jspには、色付きのツールバーを作成するコードが含まれています。 ツールバーを削除するには、toolbar.jsp を HTML.jsp から削除します。
formBody.jspモジュールは、XFAフォームのHTML表現用です。
最初に、HTML5 フォームはフォームの最初のページのみをレンダリングします。ユーザーがフォームをスクロールすると、フォームの残りの部分がロードされます。こうすることでロード体験が高速になります。nav_footer.jsp コンポーネントには、すべてのスタイルとスクロール時のページのロードを支援するために必要なエレメントが含まれます。
footer.jsp モジュールは空です。ユーザーの操作にのみ使用するスクリプトを追加できます。
カスタムプロファイルを作成するには、次の手順を実行します。
URLのCRX DEインターフェイスに移動します。https://[server]:[port]/crx/de
にログインし、管理者の資格情報を使用してインターフェイスにログインします。
左のペインで /content/xfaforms/profiles の場所に移動します。
default ノードをコピーし、hrform という名前で別のフォルダー (/content/profiles) にそのノードをペーストします。
新しいノード、hrform を選択し、hrform/demo の値を持つ文字列プロパティ sling:resourceType を追加します。
ツールバーメニューで「すべて保存」をクリックして、変更を保存します。
カスタムプロファイルの作成後、このプロファイルにレンダラーの情報を追加します。新しいプロファイルの要求を受け取る際に、CRX はレンダリングする JSP ページの /apps フォルダーの存在を確認します。JSP ページを /apps フォルダーで作成します。
左側のウィンドウで、/apps
フォルダーに移動します。
/apps
フォルダーを右クリックし、hrformという名前のフォルダーを作成するよう選択します。
hrformフォルダー内で、demoという名前のフォルダーを作成します。
「すべて保存」ボタンをクリックします。
/libs/xfaforms/profile/html.jsp
に移動し、ノードhtml.jspをコピーします。
html.jspノードをhtml.jspと同じ名前で作成した/apps/hrform/demo
フォルダーに貼り付け、保存をクリックします。
プロファイルスクリプトのその他のコンポーネントを持っている場合は、手順 1 から 6 に従って、/apps/hrform/demo フォルダーにそのコンポーネントをコピーします。
プロファイルが作成されたことを確認するには、URL https://[server]:[port]/content/xfaforms/profiles/hrform.html
を開きます。
フォームを検証するには、ローカルファイルシステムから AEM Forms にフォームを読み込み、AEM サーバーオーサーインスタンスでフォームをプレビューします。