31.1 開発例の構成(SEI起点・MTOM/XOP仕様形式の添付ファイル)
この章で説明する開発例では,SEIを起点としたWebサービスを開発します。開発するWebサービスは,MTOM/XOP仕様形式の添付ファイルを使用します。
開発するWebサービスの概要および利用する情報について説明します。
- 開発例の概要
-
社員番号,顔写真,社員名,所属というユーザ情報を管理し,Webサービスクライアントからの入力に対して,処理結果を返すWebサービスを新規に開発します。
Webサービスクライアントからの要求情報およびサーバからの応答情報を次の表に示します。
表31‒1 Webサービスクライアントからの要求情報 情報名
Javaデータ型
社員番号
java.lang.String
顔写真
javax.activation.DataHandler
表31‒2 サーバからの応答情報 情報名
Javaデータ型
登録確認メッセージ
java.lang.String
社員名
java.lang.String
所属
java.lang.String
サーバからの応答情報は,ユーザ定義型クラスのUserDataクラスで保持されます。
Webサービス開発時のカレントディレクトリの構成を次の表に示します。
ディレクトリ |
説明 |
|||
---|---|---|---|---|
c:\temp\jaxws\works\mtom\ |
カレントディレクトリです。 |
|||
┣ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ |
server\ |
Webサービスの開発で使用します。 |
||
┣ ┃ ┃ |
META-INF\ |
EARファイルのMETA-INFディレクトリに対応します。 |
||
┗ |
application.xml |
「31.3.4 application.xmlを作成する」で作成します。 |
||
┣ ┃ ┃ ┃ |
src\ |
Webサービスのソースファイル(*.java)を格納します。「31.3.1 Webサービス実装クラスを作成する」および「31.3.2 Webサービス実装クラスをコンパイルする」で使用します。 |
||
┣ ┃ ┃ ┃ ┃ ┃ |
WEB-INF\ |
WARファイルのWEB-INFディレクトリに対応します。 |
||
┣ |
web.xml |
「31.3.3 web.xmlを作成する」で作成します。 |
||
┗ |
classes\ |
コンパイルしたクラスファイル(*.class)を格納します。「31.3.2 Webサービス実装クラスをコンパイルする」で使用します。 |
||
┣ ┃ |
mtom_dynamic_generate.ear |
「31.3.5 EARファイルを作成する」で作成します。 |
||
┗ |
mtom_dynamic_generate.war |
|||
┗ |
client\ |
Webサービスクライアントの開発で使用します。 |
||
┣ ┃ ┃ ┃ ┃ |
src\ |
Webサービスクライアントのソースファイル(*.java)を格納します。「31.5.1 サービスクラスを生成する」および「31.5.2 Webサービスクライアントの実装クラスを作成する」で使用します。 |
||
┣ ┃ ┃ |
classes\ |
コンパイルしたクラスファイル(*.class)を格納します。「31.5.3 Webサービスクライアントの実装クラスをコンパイルする」で使用します。 |
||
┣ ┃ |
portrait.png |
Webサービスクライアントで使用するPNGファイルで使用します。 |
||
┣ ┃ ┃ |
usrconf.cfg |
「31.6.1 Javaアプリケーション用オプション定義ファイルを作成する」で作成します。 |
||
┗ |
usrconf.properties |
カレントディレクトリのパスは,開発する環境に合わせて変更してください。
なお,以降の説明では,この表に示すディレクトリおよびファイル名を使用します。コマンド実行例やJavaソースなどで背景色付きの太字になっている部分は,この例で使用する指定値や生成される値を示します。構築する環境に合わせて読み替えてください。
また,この章で説明する開発例では,WebサービスとWebサービスクライアントを同じ環境で開発しますが,別の環境で開発することもできます。別の環境で開発する場合は,それぞれの環境に合わせて,カレントディレクトリのパスを読み替えてください。