3.3.12 メールアダプタを定義する
メールアダプタの定義方法について説明します。
- 〈この項の構成〉
(1) メールアダプタを使用するときの注意事項
メールアダプタを設定する前に知っておく必要がある注意事項について説明します。
-
メールアダプタの宛先には,有効なアドレスを設定してください。
-
メールアダプタに無効なアドレスを設定した場合,そのアドレス宛てのメールはメールサーバの機能により返送(バウンス)されます。
-
FTPクライアントやFTPサーバから転送されたファイルを添付ファイルとして使用する場合は,メールアダプタのほかにFTPインバウンドアダプタ,FTP受付,およびFTPアダプタとの連携が必要です。FTPと連携する機能については,マニュアル「サービスプラットフォーム 解説」の「8. FTPと連携してファイルを転送する機能(FTP連携)」を参照してください。
(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によって暗号化されたメールが送信されます。
-
- ●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) メールアダプタコマンド定義ファイルの作成手順
-
テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\adpmailcommand.properties)をコピーして,次のディレクトリに格納します。
<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail
-
定義内容を編集して保存します。
メールアダプタコマンド定義ファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.2 メールアダプタコマンド定義ファイル」を参照してください。
(b) メールアダプタアカウント定義ファイルの作成手順
-
csmmailaddusrコマンドを実行してメールアダプタアカウント定義ファイルを作成します。
作成したメールアダプタアカウント定義ファイルのパスは,メールアダプタ実行環境プロパティファイルのmailadp.account.file.pathキーで指定する必要があります。csmmailaddusrコマンドの詳細は,マニュアル「サービスプラットフォーム リファレンス」の「csmmailaddusr(メールアダプタユーザ情報の登録/更新)」を参照してください。
(c) メールヘッダ定義ファイルの作成手順
-
テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\mail-header.properties)をコピーして,任意のディレクトリに格納します。
-
コピーしたテンプレートファイルのファイル名を任意の名称に変更します。
-
定義内容を編集して保存します。
メールヘッダ定義ファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.4 メールヘッダ定義ファイル」を参照してください。
(d) メールアダプタ実行環境プロパティファイルの作成手順
-
テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\templates\adpmail.properties)をコピーして,次のディレクトリに格納します。
- 全HCSCサーバ共通の定義の場合
-
<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail
- 特定のHCSCサーバ用の定義の場合
-
サブディレクトリ<HCSCサーバ名>を作成して格納してください。Windowsの場合,HCSCサーバ名の大文字・小文字は区別されます。
<サービスプラットフォームのインストールディレクトリ>\CSC\config\mail\<HCSCサーバ名>
-
コピーしたテンプレートファイルのファイル名を「<サービスID※>.properties」に変更します。
-
定義内容を編集して保存します。
メールアダプタ実行環境プロパティファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.13.3 メールアダプタ実行環境プロパティファイル」を参照してください。
- 注※
-
サービスIDは,メールアダプタを新規に追加するときにサービスアダプタ定義画面で指定する任意の文字列です。
メールアダプタ実行環境プロパティファイルは,メールアダプタを開始する際に実行環境に反映されます。このため,メールアダプタ実行環境プロパティファイルの内容を変更する場合は,いったんメールアダプタを停止する必要があります。
(4) サービスアダプタ定義画面での操作
メールアダプタを定義する場合の手順を次に示します。
-
サービスアダプタ定義画面を表示します。
サービスアダプタ定義画面の表示方法については,「3.3.1(4) サービスアダプタ定義画面の表示」を参照してください。
-
サービスアダプタ定義画面(基本)で定義情報を設定します。
サービスアダプタ定義画面(基本)で設定が必要な項目については,「3.3.17(12) メールアダプタの場合」およびマニュアル「サービスプラットフォーム リファレンス」の「1.2.2 サービスアダプタ定義画面」を参照してください。
-
[サービスアダプタ定義(詳細)]タブをクリックします。
サービスアダプタ定義画面(詳細)が表示されます。
-
サービスアダプタ定義画面(詳細)で定義情報を設定します。
サービスアダプタ定義画面(詳細)で設定が必要な項目については,「3.3.17(12) メールアダプタの場合」を参照してください。
(5) メールアダプタのディレクトリ構成
サービスプラットフォームのインストール後のディレクトリ構成を次の図に示します。なお,ここではメールアダプタの定義を格納するディレクトリ,およびメールアダプタの電文スキーマを格納するディレクトリだけ記載しています。
上記以外のディレクトリ構成については,マニュアル「サービスプラットフォーム システム構築・運用ガイド」の「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コンポーネントのパッケージングと配備定義」を参照してください。