ここでは、通信を作成のソリューションをお使いの環境に統合する方法の詳細を説明します。
通信を作成アプリケーションをカスタムポータルから呼び出す 1 つの方法として、次の要求パラメーターを持つ URL を準備する方法が挙げられます。
レターテンプレートの識別子(cmLetterId パラメーターを使用)、またはレターテンプレートの名前(cmLetterName パラメーターを使用)
目的のデータソースから取得した XML データの URL(cmDataUrl パラメーターを使用)。
例えば、カスタムポータルは、次のような URL を準備します
https://[server]:[port]/[contextPath]/aem/forms/createcorrespondence.html?random=[timestamp]&cmLetterId=[letter identifier]&cmDataUrl=[data URL]
(ポータル上のリンクからの href にすることができます)。
ポータルにレターテンプレート名が付いている場合、URL は
https://[server]:[port]/content/cm/createcorrespondence.html?cmLetterName=[letter name]&cmDataUrl=[data URL]
この呼び出し方法は安全ではありません。必要なパラメーターが URL に明示される GET 要求として渡されるからです。
通信を作成アプリケーションを呼び出す前に、データを保存、アップロードして、指定された dataURL で通信を作成の UI を呼び出します。この処理は、カスタムポータル自体で実行されるか、または異なるバックエンドプロセスで実行される可能性があります。
通信を作成アプリケーションを呼び出すもう 1 つの(より安全な)方法は、次の場所の URL にヒットするだけで済みます。 https://[server]:[port]/[contextPath]/aem/forms/createcorrespondence.html
:通信を作成アプリケーションをPOSTリクエストとして呼び出すためのパラメーターとデータを送信する際に(エンドユーザーに対して非表示にする)。 つまり、通信を作成アプリケーションの XML データを(cmData パラメーターを使用して、同じ要求の一部として)インラインで渡すことができることも意味します。これは、前述のアプローチでは、不可能で、理想的ではありませんでした。
名前 | 種類 | 説明 |
cmLetterInstanceId | 文字列 | レターインスタンスの ID です。 |
cmLetterName | 文字列 | レターテンプレートの識別子。 サーバー上に同じ名前の CM 文字が複数存在する場合、URL の cmLetterName パラメーターによって「名前に複数の文字が使用されています」というエラーがスローされます。このような場合、URL には cmLetterName の代わりに cmLetterId パラメーターを使用します。 |
cmLetterId | 文字列 | レターテンプレートの名前です。 |
テーブル中のパラメーターの順序が、レターの読み込みに使用されるパラメーターの優先順位を指定します。
名前 | 種類 | 説明 |
cmDataUrl |
URL | cq、ftp、http、file などの基本的なプロトコルを使用してソースファイルから取得する XML データです。 |
cmLetterInstanceId | 文字列 | レターインスタンスで使用可能な xml データを使用します。 |
cmUseTestData | ブール値 | データディクショナリに添付されたテストデータを再利用します。 |
テーブル中のパラメーターの順序が、XML データの読み込みに使用されるパラメーターの優先順位を指定します。
名前 | 種類 | 説明 |
cmPreview |
ブール値 | 「True」に設定されている場合、レターをプレビューモードで開きます |
ランダム | Timestamp | ブラウザーのキャッシュに関する問題を解決します。 |
cmDataURL に http または cq プロトコルを使用している場合、http または cq の URL には匿名でアクセスできます。