Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 受付・アダプタ定義編


3.3.12 メールアダプタを定義する

メールアダプタの定義方法について説明します。

〈この項の構成〉

(1) メールアダプタを使用するときの注意事項

メールアダプタを設定する前に知っておく必要がある注意事項について説明します。

(2) 電文フォーマットの作成

メールアダプタで使用する電文フォーマットの種類と形式を次に示します。

(a) 電文フォーマットの種類

メールアダプタで使用する電文フォーマットは次の2種類です。

  • 要求電文フォーマット

  • 応答電文フォーマット

要求電文フォーマットには,メールサーバの情報や,メール本文,アドレス,主題など,ユーザ入力情報を設定します。応答電文フォーマットには送信メールのメッセージIDが設定されます。

メールアダプタでは,サービスプラットフォームが提供するXMLスキーマを電文フォーマットに使用します。要求電文および応答電文に使用するXMLスキーマは,それぞれ「adpmail_smtp_request.xsd」および「adpmail_smtp_response.xsd」です。

(b) 電文フォーマットの形式

ここでは,メールアダプタで使用する要求電文フォーマットおよび応答電文フォーマットの形式について説明します。

ファイルの格納場所は「<サービスプラットフォームのインストールディレクトリ>\CSC\schema\mail」です。

●adpmail_smtp_request.xsd(要求電文フォーマットファイル)

メールアダプタがビジネスプロセスから呼び出されたときに,メールアダプタに渡される要求電文のフォーマットを次に示します。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csc/adapter/mail/send_request」です。

表3‒87 要求電文フォーマット

タグ名

種別

出現回数

説明

<request>

1回

<smtp-host-name>

string

0または1回

接続するメールサーバのIPアドレスまたはホスト名を示すタグです。

  • タグがあって値がある場合

    指定の文字列で接続します。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<request-id>

string

0または1回

受付で作成したリクエストIDを示すタグです。

  • タグがあって値がある場合

    リクエストIDとして利用されます。

  • タグがない,またはタグがあって値がない場合

    作業フォルダを利用するときはシステム例外を返します。共通フォルダを利用するときは無視されます。

<smtp-port>

long

0または1回

接続するメールサーバのポート番号を示すタグです。

  • タグがあって値がある場合

    1から65535までのポート番号を指定します。これ以外の値を指定した場合,システム例外を返します。

  • タグがあって値がない場合

    デフォルトの25が指定されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルにも指定がない場合,デフォルトの25が指定されます。

<mail-user>

string

0または1回

接続するメールサーバのログインユーザ名を示すタグです。

  • タグがあって値がある場合

    0x20〜0x7Eの範囲で指定された文字が有効になります。この範囲外の文字が指定された場合,システム例外を返します。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<mail-addr-to>※1

string

0または1回

メールの送付先ユーザの電子メールアドレスを示すタグです。複数の電子メールアドレスを指定する場合,電子メールアドレスをコンマ(,)で区切ります。

  • タグがあって値がある場合

    「TO」フィールドのアドレスとして使用されます。アドレスは検証されません。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<mail-addr-from>

string

0または1回

メールの発信元ユーザの電子メールアドレスを示すタグです。指定できる電子メールアドレスは1つだけです。

  • タグがあって値がある場合

    「FROM」フィールドのアドレスとして使用されます。アドレスは検証されません。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<mail-addr-cc>※1

string

0または1回

「CC」フィールドに設定するユーザの電子メールアドレスを示すタグです。

複数の電子メールアドレスを指定する場合,電子メールアドレスをコンマ(,)で区切ります。

  • タグがあって値がある場合

    「CC」フィールドのアドレスとして使用されます。アドレスは検証されません。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<mail-addr-bcc>※1

string

0または1回

「BCC」フィールドに設定するユーザの電子メールアドレスを示すタグです。

複数の電子メールアドレスを指定する場合,電子メールアドレスをコンマ(,)で区切ります。

  • タグがあって値がある場合

    「BCC」フィールドのアドレスとして使用されます。アドレスは検証されません。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<mail-subject-text>

string

0または1回

メールの主題を示すタグです。

  • タグがあって値がある場合

    メールの主題として使用されます。ただし,主題の文字数がメールアダプタ実行環境プロパティファイルで指定したサイズを超えた場合,超えた文字が切り落とされます。

  • タグがあって値がない場合

    主題なしでメールが送信されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。メールアダプタ実行環境プロパティファイルにも指定がない場合,主題なしでメールが送信されます。

<mail-body>※2

0または1回

メールの本文を示すタグです。メール本文は<message>および<file>で指定します。

  • タグがあって値がある場合

    メールの本文として使用されます。※3

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。メールアダプタ実行環境プロパティファイルにも指定がない場合,本文なしでメールが送信されます。

<message>

string

0または1回

メール本文として使用する文字列を示すタグです。「<」,「>」などの文字を使う場合は,事前に文字列をサニタイズしてください。

  • タグがあって値がある場合

    メールの本文として使用されます。

  • タグがあって値がない,または<file>の指定がない場合

    本文なしでメールが送信されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<file>

0または1回

内容をメール本文として使用するファイルのパスおよび文字セットを示すタグです。ファイルパスと文字セットは,<folder-name>,<mail-body-file-name>,および<file-charset>で指定します。

  • タグがあって値がある場合

    メール本文として使用されます。ファイルの内容をメール本文とする場合,文字列のサニタイズは不要です。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

<folder-name>

string

1回

ファイルを取得するフォルダを示すタグです。

  • タグの属性にcommon="true"が指定されている場合

    ファイルを取得するフォルダとして共通フォルダを利用し,このタグには「共通フォルダ定義名」を指定します。

    指定された共通フォルダ定義名から共通フォルダが取得できないときは,システム例外を返します。

  • タグの属性にcommon="false"が指定されている場合

    ファイルを取得するフォルダとして作業フォルダを利用します。

  • common属性がない,common属性の値が"true"および"false"のどちらでもない,またはタグがない場合

    システム例外を返します。

<mail-body-file-name>

string

1回

取得するファイル名を示すタグです。

  • 作業フォルダを利用する場合

    作業フォルダ直下のファイルを指定してください。

    ファイル名の先頭以外にスラッシュ(/)や円マーク(\)などの区切り文字は使用できません。ファイル名の先頭にスラッシュ(/)を使用した場合,スラッシュ(/)は無視されます。

  • 共通フォルダを利用する場合

    共通フォルダルート配下のファイルを指定してください。

    共通フォルダルートより上位のパスを指定した場合,エラーになります。

    相対パスの先頭のファイル区切り文字(/)は省略できます。

    サブフォルダを使用する場合は,共通フォルダルートからファイル名までの相対パスを指定してください。

複数のファイル名は指定できません。

  • タグがあって値が上記の制限に従っている場合

    ファイル名として使用されます。

  • タグがあって値が上記の制限に違反する場合

    システム例外を返します。

  • タグがない,またはタグがあって値がない場合

    システム例外を返します。

<file-charset>

string

0または1回

メール本文の内容が記述されたファイルの文字セットを指定します。

  • タグがあって値がある場合

    文字セットとして使用されます。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効になります。メールアダプタ実行環境プロパティファイルにも指定がない場合,UTF -8が文字セットとして使用されます。

<attachment-file>

0または1回

メールの添付ファイルを示すタグです。添付ファイルは<item>で指定します。複数の添付ファイルを指定できます。

  • タグがあって値がある場合

    メールの添付ファイルとして使用されます。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効になります。

<item>

1回以上

メールの添付ファイルの詳細を示すタグです。添付ファイルの詳細は<attach-folder>および<attach-file-name>で指定します。

  • タグがあって値がある場合

    メールの添付ファイルとして使用されます。

  • タグがない,またはタグがあって値がない場合

    システム例外を返します。

<attach-folder>

string

1回

添付ファイルが格納されているフォルダを示すタグです。

  • タグの属性にcommon="true"が指定されている場合

    ファイルを取得するフォルダとして共通フォルダを利用し,このタグには「共通フォルダ定義名」を指定します。

    指定された共通フォルダ定義名から共通フォルダが取得できないときは,システム例外を返します。

  • タグの属性にcommon="false"が指定されている場合

    ファイルを取得するフォルダとして作業フォルダを利用します。

  • common属性がない,common属性の値が"true"および"false"のどちらでもない,またはタグがない場合

    システム例外を返します。

<attach-file-name>

string

1回

添付ファイル名を示すタグです。

  • 作業フォルダを利用する場合

    作業フォルダ直下のファイルを指定してください。

    ファイル名の先頭以外にスラッシュ(/)や円マーク(\)などの区切り文字は使用できません。ファイル名の先頭にスラッシュ(/)を使用した場合,スラッシュ(/)は無視されます。

  • 共通フォルダを利用する場合

    共通フォルダルート配下のファイルを指定してください。

    共通フォルダルートより上位のパスを指定した場合,エラーになります。

    相対パスの先頭のファイル区切り文字(/)は省略できます。

複数のファイル名は指定できません。

  • タグがあって値が上記の制限に従っている場合

    ファイル名として使用されます。

  • タグがあって値が上記の制限に違反する場合

    システム例外を返します。

  • タグがない,またはタグがあって値がない場合

    システム例外を返します。

<mail-format>

string

0または1回

メールフォーマットを示すタグです。次のどれかを指定します。

text/plain:メール本文をプレーンテキストで作成します。

text/html:メール本文をhtml形式で作成します。

text/xml:メール本文をxml形式で作成します。※4

  • タグがあって値が「text/plain」,「text/html」,または「text/xml」の場合

    メールフォーマットとして使用されます。

  • タグがあって値が「text/plain」,「text/html」,または「text/xml」のどれでもない場合

    システム例外を返します。

  • タグがあって値がない場合

    JavaMailの設定に依存します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルにも指定がない場合,「text/plain」でメール本文が作成されます。

<mail-encoding>

string

0または1回

メールのエンコードを示すタグです。

  • タグがあって値がある場合

    メールのエンコードとして使用されます。

  • タグがあって値がない場合

    JavaMailの設定に依存します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルにも指定がない場合,ISO-2022-JPが使用されます。

<mail-auth>

string

0または1回

SMTP認証の形式を示すタグです。次のどちらかを指定します。

PLAIN:認証しません。

LOGIN:ログイン時にユーザ名およびパスワードで認証します。

  • タグがあって値が「PLAIN」または「LOGIN」の場合

    SMTP認証の形式として使用されます。

  • タグがあって値が「PLAIN」または「LOGIN」のどちらでもない場合

    システム例外を返します。

  • タグがあって値がない場合

    JavaMailの設定に依存します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルにも指定がない場合,「PLAIN」でメールが送信されます。

<mail-option>

0回以上

ユーザ定義のメールヘッダを示すタグです。

ヘッダ名および値は,<option-key>および<option-value>を組み合わせて指定します。

  • タグがあって値がある場合

    ユーザ定義のメールヘッダとして使用されます。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。メールアダプタ実行環境プロパティファイルにも指定がない場合,ユーザ定義のメールヘッダなしでメールが送信されます。

<option-key>

string

1回

ユーザ定義のメールヘッダのキー名を指定します。

  • タグがあって値がある場合

    メールヘッダのキー名として使用します。

  • タグがない,またはタグがあって値がない場合

    システム例外を返します。

<option-value>

string

1回

ユーザ定義のメールヘッダの値を指定します。

  • タグがあって値がある場合

    メールヘッダの値として使用します。

  • タグがない,またはタグがあって値がない場合

    システム例外を返します。

<smtps>

0または1回

TLSに関する設定を示すタグです。

  • タグがあって値がある場合

    タグの値に従い,SMTP,またはTLSを使用してSMTPサーバに接続します。

  • タグがあって値がない場合

    システム例外を返します。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルに指定がない場合,SMTPを使用してSMTPサーバに接続します。

<smtps-enable>

boolean

0または1回

SMTPサーバとの接続にTLSを使用するかどうかを指定するタグです。次のどちらかを指定します。

true:TLSを使用してSMTPサーバに接続します。

false:TLSを使用しません。SMTPでSMTPサーバに接続します。

  • タグがあって値が「true」または「false」の場合

    指定した値が適用されます。

  • タグがあって値が「true」または「false」のどちらでもない場合

    システム例外を返します。

  • タグがあって値がない場合

    デフォルトの「false」が使用されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルに指定がない場合,SMTPを使用してSMTPサーバに接続します。

<smtps-starttls-enable>

boolean

0または1回

SMTPサーバとの接続にTLSを使用する場合にSTARTTLSを使用するかどうかを指定するタグです。次のどちらかを指定します。

true:STARTTLSを使用します。通常のSMTPで通信を開始し,「STARTTLS」で双方がTLSに対応しているか確認したあとにTLSで再接続します。

false:STARTTLSを使用しません。SMTP通信がすべてTLSによって暗号化されます。

この指定は,SMTPサーバとの接続にTLSを使用する場合だけ有効となります。

  • タグがあって値が「true」または「false」の場合

    指定した値が適用されます。

  • タグがあって値が「true」または「false」のどちらでもない場合

    システム例外を返します。

  • タグがあって値がない場合

    デフォルトの「true」が使用されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルに指定がない場合,TLSによって暗号化されたメールが送信されます。

<smtps-starttls-required>

boolean

0または1回

メールアダプタでSTARTTLSを使用する設定にしている場合で,接続先のSMTPサーバでSTARTTLSが処理できないときに,メールアダプタでエラーを発生させるかどうかを指定するタグです。

true:接続先のSMTPサーバがSTARTTLSをサポートしていない場合,またはSTARTTLSの処理中にエラーが発生した場合,メールアダプタでエラーを発生させます。

false:接続先のSMTPサーバがSTARTTLSをサポートしていない場合,またはSTARTTLSの処理中にエラーが発生した場合,メールアダプタでエラーを発生させません。SMTPを使用してSMTPサーバに接続します。

この指定は,SMTPサーバとの接続にTLSとSTARTTLSを使用する場合だけ有効となります。

  • タグがあって値が「true」または「false」の場合

    指定した値が適用されます。

  • タグがあって値が「true」または「false」のどちらでもない場合

    システム例外を返します。

  • タグがあって値がない場合

    デフォルトの「false」が使用されます。

  • タグがない場合

    メールアダプタ実行環境プロパティファイルの値が有効となります。

    メールアダプタ実行環境プロパティファイルに指定がない場合,STARTTLSを使用する設定に依存することなく,TLSによって暗号化されたメールが送信されます。

(凡例)

−:該当する項目はありません。

注※1

<mail-addr-to>,<mail-addr-cc>,および<mail-addr-bcc>にアドレス指定がない,かつメールアダプタ実行環境プロパティファイルにも指定がない場合,システム例外を返します。

注※2

要求電文の<mail-body>の設定と,メールアダプタ実行環境プロパティファイルのmailadp.mail.body-textキーおよびmailadp.mail.body-filepathキーの設定は背反となります。例えば,要求電文の<mail-body>で<message>だけを指定して<file>を指定しなかった場合,mailadp.mail.body-filepathキーでファイルを指定しても,<file>として本文に設定されることはありません。

注※3

<message>および<file>の両方を指定した場合,最初に<message>に指定された文字列がメール本文に設定されます。そのあと,<file>に指定されたファイルの内容がメール本文に設定されます。

注※4

text/xmlを指定した場合,メールアダプタではプレーンテキスト形式で表示されます。

●adpmail_smtp_response.xsd(応答電文フォーマットファイル)

メールアダプタが呼び出し元のビジネスプロセスに返す応答電文のフォーマットを次に示します。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csc/adapter/mail/send_response」です。

表3‒88 応答電文フォーマット

タグ名

種別

出現回数

説明

<response>

1回

<message-id>

string

1回

送信されるメールメッセージのメッセージIDを示すタグです。

メール送信時,内部で作成されたMimeMessageがメールサーバに送信されます。このMimeMessageのIDがメッセージIDとなります。

(凡例)

−:該当する項目はありません。

(3) メールアダプタの定義ファイルの作成

作成する定義ファイルの種類を次に示します。

各定義ファイルの作成手順を次に示します。

(a) メールアダプタコマンド定義ファイルの作成手順

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\adpmailcommand.properties)をコピーして,次のディレクトリに格納します。

    <サービスプラットフォームのインストールディレクトリ>\CSC\config\mail

  2. 定義内容を編集して保存します。

メールアダプタコマンド定義ファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.2 メールアダプタコマンド定義ファイル」を参照してください。

(b) メールアダプタアカウント定義ファイルの作成手順

  1. csmmailaddusrコマンドを実行してメールアダプタアカウント定義ファイルを作成します。

    作成したメールアダプタアカウント定義ファイルのパスは,メールアダプタ実行環境プロパティファイルのmailadp.account.file.pathキーで指定する必要があります。csmmailaddusrコマンドの詳細は,マニュアル「サービスプラットフォーム リファレンス」の「csmmailaddusr(メールアダプタユーザ情報の登録/更新)」を参照してください。

(c) メールヘッダ定義ファイルの作成手順

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\mail-header.properties)をコピーして,任意のディレクトリに格納します。

  2. コピーしたテンプレートファイルのファイル名を任意の名称に変更します。

  3. 定義内容を編集して保存します。

メールヘッダ定義ファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.4 メールヘッダ定義ファイル」を参照してください。

(d) メールアダプタ実行環境プロパティファイルの作成手順

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\adpmail.properties)をコピーして,次のディレクトリに格納します。

    全HCSCサーバ共通の定義の場合

    <サービスプラットフォームのインストールディレクトリ>\CSC\config\mail

    特定のHCSCサーバ用の定義の場合

    サブディレクトリ<HCSCサーバ名>を作成して格納してください。Windowsの場合,HCSCサーバ名の大文字・小文字は区別されます。

    <サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\<HCSCサーバ名>

  2. コピーしたテンプレートファイルのファイル名を「<サービスID>.properties」に変更します。

  3. 定義内容を編集して保存します。

メールアダプタ実行環境プロパティファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.3 メールアダプタ実行環境プロパティファイル」を参照してください。

注※

サービスIDは,メールアダプタを新規に追加するときにサービスアダプタ定義画面で指定する任意の文字列です。

メールアダプタ実行環境プロパティファイルは,メールアダプタを開始する際に実行環境に反映されます。このため,メールアダプタ実行環境プロパティファイルの内容を変更する場合は,いったんメールアダプタを停止する必要があります。

(4) サービスアダプタ定義画面での操作

メールアダプタを定義する場合の手順を次に示します。

  1. サービスアダプタ定義画面を表示します。

    サービスアダプタ定義画面の表示方法については,「3.3.1(4) サービスアダプタ定義画面の表示」を参照してください。

  2. サービスアダプタ定義画面(基本)で定義情報を設定します。

    サービスアダプタ定義画面(基本)で設定が必要な項目については,「3.3.18(12) メールアダプタの場合」およびマニュアル「サービスプラットフォーム リファレンス」の「1.2.2 サービスアダプタ定義画面」を参照してください。

  3. [サービスアダプタ定義(詳細)]タブをクリックします。

    サービスアダプタ定義画面(詳細)が表示されます。

  4. サービスアダプタ定義画面(詳細)で定義情報を設定します。

    サービスアダプタ定義画面(詳細)で設定が必要な項目については,「3.3.18(12) メールアダプタの場合」を参照してください。

(5) メールアダプタのディレクトリ構成

サービスプラットフォームのインストール後のディレクトリ構成を次の図に示します。なお,ここではメールアダプタの定義を格納するディレクトリ,およびメールアダプタの電文スキーマを格納するディレクトリだけ記載しています。

図3‒23  メールアダプタのディレクトリ構成

[図データ]

上記以外のディレクトリ構成については,マニュアル「サービスプラットフォーム システム構築・運用ガイド」の「2.1.2 Service Platformのインストール」を参照してください。

(6) メールアダプタの定義例

ここでは,標準受付に渡されたメッセージをメール本文に設定し,メールアダプタ実行環境プロパティファイルで設定した宛先にメール送信する場合を例に,メールアダプタおよびビジネスプロセスの設定例について説明します。

(a) メールアダプタの設定例

開発環境でのメールアダプタの設定例,およびメールアダプタ実行環境プロパティファイルの設定例について説明します。

●開発環境でのメールアダプタの設定

開発環境でのサービスアダプタ定義画面の各項目は次のように設定します。なお,電文フォーマットおよび定義ファイルの格納先,開発環境での操作方法については,「3.2.12 メールアダプタを新規に追加する」を参照してください。

図3‒24 サービスアダプタ定義画面(基本)の設定例

[図データ]

表3‒89 サービスアダプタ定義画面(基本)の設定項目

分類

項目

設定内容

サービス部品制御情報

サービス名

mailadp

サービスID

mailadp

サービス種別

メールアダプタ

アドレス

最大インスタンス数

0

サービスクラス名

オペレーション

SEND

オペレーション情報

オペレーション名

SEND

通信モデル

同期

要求電文

any型を使う(チェックボックス)

使わない(チェックしない)

標準

使う(チェックボックス)

使わない(チェックしない)

電文フォーマット

サービス部品

電文フォーマット

adpmail_smtp_request.xsd

データ変換定義

応答電文

any型を使う(チェックボックス)

使わない(チェックしない)

標準

使う(チェックボックス)

使わない(チェックしない)

電文フォーマット

サービス部品

電文フォーマット

adpmail_smtp_response.xsd

データ変換定義

フォルト電文

(凡例)

−:設定しません。または該当する項目がありません。

図3‒25 サービスアダプタ定義画面(詳細)の設定例

[図データ]

表3‒90 サービスアダプタ定義画面(詳細)の設定項目

分類

項目

設定内容

サービスアダプタ制御情報

サービスアダプタ(EJB-JARファイル)

cscmsg_adpejb.jar

ユーティリティクラス(JARファイル)

adpmailpc.jar

独自定義ファイル

(凡例)

−:設定しません。

●メールアダプタ実行環境プロパティファイルの作成

開発環境で定義したメールアダプタに対応するメールアダプタ実行環境プロパティファイルを作成します。ここでは,ファイル名を「mailadp.properties」としています。

なお,メールアダプタ実行環境プロパティファイルの作成方法については,「3.3.12(3) メールアダプタの定義ファイルの作成」を参照してください。

メールアダプタ実行環境プロパティファイルの作成例を次に示します。斜体部分が変更個所です。

# All Rights Reserved. Copyright (C) 2011, Hitachi, Ltd.
 
mailadp.smtp.host.name = mail-server
#mailadp.smtp.port = 25
#mailadp.user = 
mailadp.addr.from = sampleuser2@XXXXXX.com
mailadp.addr.to = sampleuser@XXXXXX.com
#mailadp.addr.cc = 
#mailadp.addr.bcc = 
#mailadp.addr.count.max = 768
#mailadp.mail.body.size = 1024000
#mailadp.attach.path.1 =
#mailadp.attach.file.size = 5242880
#mailadp.max.attach.count.per.mail = 10
#mailadp.mail.format = text/plain
#mailadp.mail.body-text = 
#mailadp.mail.body-filepath = 
#mailadp.mail.body-filecharset = UTF-8
#mailadp.subject.size = 80
#mailadp.subject.text = 
mailadp.smtp.encoding = ISO-2022-JP
#mailadp.smtp.auth = PLAIN
#mailadp.user.header.path = 
#mailadp.account.file.path = 
#mailadp.methodtrace.level = 3
#mailadp.methodtrace.filepath = 
#mailadp.methodtrace.filenum = 
#mailadp.methodtrace.filesize = 2097152
#mailadp.messagelog.level = 10
#mailadp.smtp.timeout = 180
#mailadp.smtp.connectiontimeout = 180
#mailadp.read-lock.retry.count = 0
#mailadp.read-lock.retry.interval = 1

作成したメールアダプタ実行環境プロパティファイルは,「<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail」フォルダに格納します。

(b) ビジネスプロセスの設定例

開発環境でのビジネスプロセスの設定例,およびデータ変換定義の設定例について説明します。

なお,開発環境で使用する画面の詳細は,マニュアル「サービスプラットフォーム リファレンス」の「1. 画面(開発環境)」を参照してください。開発環境での操作方法については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「5. ビジネスプロセスの定義」および「7. データ変換の定義」を参照してください。

●ビジネスプロセス定義画面の設定

開発環境のビジネスプロセス定義画面で次のようにアクティビティを定義します。

図3‒26 ビジネスプロセスの設定例

[図データ]

●変数の設定

ビジネスプロセス内の電文の受け渡しに必要なサービス部品電文用および標準電文用の変数を作成します。なお,この設定例では相関セットを使用しません。

  • サービス部品電文用の変数の作成

    ビジネスプロセス定義画面の[変数・相関セット一覧]ダイアログで,次の変数を追加します。

    表3‒91 サービス部品電文用の変数

    変数名

    説明

    mail_input

    メールアダプタの要求電文の変数

    mail_output

    メールアダプタの応答電文の変数

    設定する種別はすべて[XML]です。また,それぞれの変数について[電文フォーマットの取込]ダイアログで次のとおりに設定します。

    表3‒92 [電文フォーマットの取込]ダイアログでの設定値

    項目名

    変数名

    mail_input

    mail_output

    サービス/受付

    サービス名

    サービス名

    サービス/受付の名称

    mailadp

    mailadp

    オペレーション名

    SEND

    SEND

    電文種別

    要求電文(ボディ)

    応答電文(ボディ)

    電文フォーマット

    mail_input

    mail_output

  • 標準電文用の変数の作成

    次の名称および内容で標準電文の要求電文用と応答電文用の電文フォーマットを作成します。

    ・input.xsd

    <?xml version="1.0" encoding="UTF-8" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:element name="SampleSOAPinput">
        <xsd:complexType>
          <xsd:sequence>
           <xsd:element name="MAIL_BODY" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>

    ・output.xsd

    <?xml version="1.0" encoding="UTF-8" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <xsd:element name="SampleSOAPoutput">
        <xsd:complexType>
          <xsd:sequence>
           <xsd:element name="MESSAGE_ID" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>

    次に,ビジネスプロセス定義画面の[変数・相関セット一覧]ダイアログで,次の変数を追加します。

    表3‒93 標準電文用の変数

    変数名

    説明

    input

    標準受付の要求電文の変数

    output

    標準受付の応答電文の変数

    設定する種別はすべて[XML]です。

    次に,それぞれの変数に対して[変数・相関セット一覧]ダイアログの[...]ボタンで,作成した電文フォーマットを次のとおりに指定します。

    表3‒94 指定する電文フォーマット

    変数名

    指定する電文フォーマット

    input

    input.xsd

    output

    output.xsd

●データ変換定義の設定

データ変換アクティビティ(メールアダプタ要求電文作成)では,標準受付の要求電文からメールアダプタの要求電文を作成するマッピングをします。同様に,データ変換アクティビティ(応答電文作成)では,メールアダプタの応答電文から標準受付の応答電文を作成するマッピングをします。

まず,ビジネスプロセス定義画面でデータ変換アクティビティ(メールアダプタ要求電文作成)を右クリックし,[マッピング定義起動]を選択します。

標準受付の要求電文のMAIL_BODY要素をメールアダプタの要求電文にあるmail-body要素の子要素のmessage要素にマッピングします。

図3‒27 要求電文のマッピング

[図データ]

同様に,ビジネスプロセス定義画面でデータ変換アクティビティ(応答電文作成)を右クリックし,[マッピング定義起動]を選択します。

メールアダプタの応答電文にあるmessage-id要素を標準受付の応答電文のMESSAGE_ID要素にマッピングします。

図3‒28 応答電文のマッピング

[図データ]

●サービス呼出アクティビティの設定

ビジネスプロセス定義画面のサービス呼出アクティビティ(メールアダプタ呼出)をダブルクリックし,表示される[サービス呼出アクティビティ]ダイアログで次のように設定します。

図3‒29 サービス呼出アクティビティの設定値

[図データ]

設定内容を次の表に示します。

表3‒95 サービス呼出アクティビティの設定内容

分類

項目

設定値

アクティビティ名

メールアダプタ呼出

サービス名

mailadp

オペレーション名

SEND

通信モデル

同期

要求電文

ボディ割当変数

mail_input

ヘッダ割当変数

応答電文

ボディ割当変数

mail_output

ヘッダ割当変数

割当相関セット群

(凡例)

−:設定しません。

これで,メールアダプタおよびビジネスプロセスの設定は完了です。

なお,この設定例でビジネスプロセスを実行するには,サービスリクエスタから標準受付に対して要求電文を指定してメッセージを送信する必要があります。サービスリクエスタの作成方法については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「9.2 標準の同期受付(Webサービス)に要求を出すサービスリクエスタ(SOAP通信基盤)」を参照してください。

そのあと,コンポーネントの検証とパッケージングをしてからテスト環境に配備定義して動作を確認してください。詳細は,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8. HCSCコンポーネントのパッケージングと配備定義」を参照してください。