PEXA Serviceについて
チュートリアル
テストツール
定義ファイル
基本プロセス
拡張プロセス
Condition
セッション
モデル
リファレンス
環境設定
|
mailプロセス概要
|
PEXA4.6以降の機能です。
サービスからメール送信するためのプロセスです。
JavaMailの機能を使用してメール送信を行うことが出来ます。
アプリケーションサーバーにデプロイされたMailSession(javax.mail.Session)で送信を行うので、
DB接続のデータソース設定と同じように環境毎の設定はアプリケーションの外部で指定します。
そのため、mailプロセスでは送信先や送信内容のみの指定でメール送信を行うことが可能です。
|
|
mailフォーマットタイプ書式
|
(任意のプロセス名
format_type mail
(mail
text_type属性(1)
to宣言部(0|1)
cc宣言部(0|1)
bcc宣言部(0|1)
from宣言部(0|1)
from_name宣言部(0|1)
replyto宣言部(0|1)
subject宣言部(0|1)
message宣言部(0|1)
encoding宣言部(0|1)
attachments宣言部(0|1)
)
)
記述注:
属性 あらかじめ決められた値を選択する(true/falseなど)
宣言部 値または、値のリストを設定する
セクション 入れ子で他の属性、宣言部、セクションを保持する可能性がある
(値又は、値のリストが設定される場合もある)
(1):必須
(0|1):オプション
(1以上):一個以上必須
(0以上):0個以上(オプション)
text_type属性
|
概要:
必須です。
送信メール内容がテキストメールなのかHTMLメールなのかを指定します。
区分値:
- plain:テキストメール
- html:HTMLメール
ここで指定された値が、メールヘッダに埋め込まれるMIMEタイプにそのまま反映されます。
|
|
to宣言部
|
概要:
任意です。
メール送信先アドレス(TO)を指定します。
指定できるのは、String, String配列, Stringを格納したListになります。
送信先名を指定する場合は、"送信先名<送信先メールアドレス>"のように記述します。
|
|
cc宣言部
|
概要:
任意です。
メール送信先アドレス(CC)を指定します。
指定できるのは、String, String配列, Stringを格納したListになります。
送信先名を指定する場合は、"送信先名<送信先メールアドレス>"のように記述します。
|
|
bcc宣言部
|
概要:
任意です。
メール送信先アドレス(BCC)を指定します。
指定できるのは、String, String配列, Stringを格納したListになります。
送信先名を指定する場合は、"送信先名<送信先メールアドレス>"のように記述します。
|
|
from宣言部
|
概要:
任意です。
メール送信元アドレス(FROM)を指定します。
指定できるのは、String値のみとなります。
|
|
from_name宣言部
|
概要:
任意です。
メール送信元名(FROMの名前)を指定します。
指定できるのは、String値のみとなります。
|
|
replyto宣言部
|
概要:
任意です。
メール返信先アドレス((Reply-To)を指定します。
指定できるのは、String値のみとなります。
返信先名を指定する場合は、"返信先名<返信先メールアドレス>"のように記述します。
|
|
subject宣言部
|
概要:
任意です。
メールの件名を指定します。
指定できるのはString値のみとなります。
|
|
message宣言部
|
概要:
任意です。
メールの内容を指定します。
指定できるのはString値のみとなります。
text_type=htmlとした場合は、このmessage宣言部でHTMLメールの内容をHTML形式の文字列データとして渡して下さい。
|
|
encoding宣言部
|
概要:
任意です。
メールの文字列のエンコード用のキャラクタセットを指定します。
指定できるのはString値のみとなります。
デフォルトは、ISO-2022-JPとなります。UTF-8等を指定することができます。
|
|
attachments宣言部
|
概要:
任意です。
メールに添付するファイル情報を指定します。
指定できるのはUpdatableまたはUpdatableのCollection値のみとなります。
指定したUpdatableには、以下の現象型を指定します。
現象型 | 内容 | データ型 | 必須/任意 |
PEXA_MailAttachmentBodyBinary | 添付ファイルのバイナリデータ | pexa.share.util.cont.Binaryまたはbyte[]で指定 | 必須 |
PEXA_MailAttachmentFileName | 添付ファイルのメール上のファイル名 | String | 必須 |
PEXA_MailAttachmentContentType | 添付ファイルのコンテントタイプ | String | 任意 |
コンテントタイプはメール上のファイル名のファイル拡張子で以下のパターンで判断しますが、
それ以外のコンテントタイプを指定する場合にPEXA_MailAttachmentContentTypeを使用します。
"txt", "text/plain"
"csv", "text/csv"
"css", "text/css"
"html","text/xml"
"js", "text/javascript"
"tsv", "text/tab-separated-values"
"pdf", "application/pdf"
"xls", "application/vnd.ms-excel"
"ppt", "application/vnd.ms-powerpoint"
"doc", "application/msword"
"jpg", "image/jpeg"
"jpeg","image/jpeg"
"png", "image/png"
"gif", "image/gif"
"exe", "application/octet-stream"
"bmp", "image/bmp"
"zip", "application/zip"
"lzh", "application/x-lzh"
"tar", "application/x-tar"
"jar", "application/java-archiver"
"docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"
"xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
"pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"
PEXA_MailAttachmentContentTypeがNullでファイル拡張子も上記パターンにないときは、コンテントタイプは"application/octet-stream"を使用します。
|
|
|
|
MailSessionのデプロイ
|
mailプロセス実行時には、APサーバーにデプロイされたjavax.mail.Sessionを使用します。
そのため、あらかじめ実行環境にメールセッションの設定を行う必要があります。
設定方法はアプリケーションサーバー毎に異なりますので、詳細はそれぞれのマニュアルなどを参照して下さい。
一例として、JBossにおけるメールセッションのデプロイ設定について説明します。
JBossのMail設定
|
JBossでは、以下のフォルダ配下にあるXMLファイルでメール設定を行います。
%JBOSS_HOME%\server\{設定セット]\deploy\mail-service.xml
上記ファイルは元々上記のフォルダに格納されていて、設定サンプルが記述されています。
JBossではメール設定は1つしかデプロイできないので、このファイルの内容を直接書き換えて使用します。
このファイル中で記述すべき内容は以下となります。
- JNDIName:JBossでは、「java:/PEXAMAIL」と指定します。
- mail.user:メールヘッダに送信者として設定されます。
- mail.from:メールヘッダに返信先として指定されます。
- mail.smtp.host:SMTPサーバーのIPアドレスもしくはサーバー名を指定します。
- mail.smtp.port:SMTPサーバーのポート番号を指定します。
以下、記述例です。
<?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: mail-service.xml 62349 2007-04-15 16:48:15Z dimitris@jboss.org $ -->
<server>
<!-- ==================================================================== -->
<!-- Mail Connection Factory -->
<!-- ==================================================================== -->
<mbean code="org.jboss.mail.MailService"
name="jboss:service=Mail">
<attribute name="JNDIName">java:/PEXAMAIL</attribute>
<attribute name="User">nobody</attribute>
<attribute name="Password">password</attribute>
<attribute name="Configuration">
<!-- A test configuration -->
<configuration>
<!-- Change to your mail server prototocol -->
<property name="mail.store.protocol" value="pop3"/>
<property name="mail.transport.protocol" value="smtp"/>
<!-- Change to the user who will receive mail -->
<property name="mail.user" value="jboss-system"/>
<!-- Change to the mail server -->
<property name="mail.pop3.host" value="pop3.nosuchhost.nosuchdomain.com"/>
<!-- Change to the SMTP gateway server -->
<property name="mail.smtp.host" value="192.168.100.1"/>
<!-- The mail server port -->
<property name="mail.smtp.port" value="25"/>
<!-- Change to the address mail will be from -->
<property name="mail.from" value="jboss-system@atrris.com"/>
<!-- Enable debugging output from the javamail classes -->
<property name="mail.debug" value="false"/>
</configuration>
</attribute>
<depends>jboss:service=Naming</depends>
</mbean>
</server>
|
|
|
|
記述例
|
(申請のREJECTをメール送信する
format_type mail
(mail
text_type plain
to @WF_Request/Requestor/メールアドレス
subject "申請が否決されました"
message "&Translate:{@WF_Request}{申請内容否決}"
)
)
|
|
添付ファイルを含む記述例
|
(MailSet
format_type session
(session
[session_keys
MSG &Cat:{'test mail body日本語'}{&SpecialChar:{LF}}{'下記はアクセスと同じですか?'}
AT0Bin &Read:{C:\\wsp\\temp\\att\\20170215dp.pdf}{Binary}
AT1Bin &Read:{C:\\wsp\\temp\\att\\CMPOrderExcelData.xls}{Binary}
AT2Bin &Read:{C:\\wsp\\temp\\att\\CMPOrderExcelData.xlsx}{Binary}
AT3Bin &Read:{C:\\wsp\\temp\\att\\SKUCSVOUTF1Data20160427001.csv}{Binary}
,
[ATList
PEXA_MailAttachmentBodyBinary @AT0Bin
PEXA_MailAttachmentFileName "日本語01.pdf"
,
PEXA_MailAttachmentBodyBinary @AT1Bin
PEXA_MailAttachmentFileName "CMPOrderExcelData.xls"
,
PEXA_MailAttachmentBodyBinary @AT2Bin
PEXA_MailAttachmentFileName "CMPOrderExcelData.xlsx"
,
PEXA_MailAttachmentBodyBinary @AT3Bin
PEXA_MailAttachmentFileName "CSVData.csv"
PEXA_MailAttachmentContentType "text/plain"
]
]
)
)
(SendMail
format_type mail
(mail
text_type plain
to "xxxxxx@atrris.com"
subject "test mail日本語"
message @MSG
encoding "UTF-8"
attachments @ATList
)
)
|
|
更新情報
|
- 最終更新者 : $Author: morishita $
- 最終更新日時 : $Date:: 2010-03-19 22:48:07 #$
- バージョン : $Revision: 4891 $
|
|
|