Hitachi

Cosminexus V11 アプリケーションサーバ Webサービス開発ガイド


8.1 開発例の構成(SEI起点・EJBのWebサービス)

この章で説明する開発例では,SEIを起点としたWebサービスを開発します。なお,ここではスタブベースでの開発例を説明しますが,ディスパッチベースやAPIベースでも開発できます。

開発するWebサービスの構成を次の表に示します。

表8‒1 Webサービスの構成(SEI起点)

項番

項目

1

デプロイするJ2EEサーバの名称

jaxwsserver

2

Webサーバのホスト名とポート番号

webhost:8085

3

ネーミングサーバのURL

corbaname::testserver:900

4

コンテキストルート

statelessjava_dynamic_generate

5

スタイル

document/literal/wrapped

6

名前空間URI

http://sample.com

7

ポートタイプ

個数

1

8

ローカル名

AddNumbersImpl

9

オペレーション

個数

1

10

ローカル名

add

11

サービス

個数

1

12

ローカル名

AddNumbersImplService

13

ポート

個数

1

14

ローカル名

AddNumbersImplPort

15

Webサービス実装クラス

com.sample.AddNumbersImpl

16

Webサービス実装クラスで公開するメソッド

個数

1

17

メソッド名

add

18

Webサービス実装内のメソッドでスローする例外

個数

1

19

クラス名

com.sample.AddNumbersFault

Webサービス開発時のカレントディレクトリの構成を次の表に示します。

表8‒2 カレントディレクトリの構成(SEI起点)

ディレクトリ

説明

c:\temp\jaxws\works\statelessjava

カレントディレクトリです。

server\

Webサービスの開発で使用します。

META-INF\

EARファイルのMETA-INFディレクトリに対応します。

application.xml

8.3.3 application.xmlを作成する」で作成します。

src\

Webサービスのソースファイル(*.java)を格納します。「8.3.1 Webサービス実装クラスを作成する」および「8.3.2 Webサービス実装クラスをコンパイルする」で使用します。

jar\

コンパイルしたクラスファイル(*.class)を格納します。「8.3.1 Webサービス実装クラスを作成する」および「8.3.2 Webサービス実装クラスをコンパイルする」で使用します。

WEB-INF\

EJB JARファイルのWEB-INFディレクトリに対応します。

wsdl\

8.3.4 WSDLファイルを作成する(任意)」で作成します。

statelessjava_dynamic_generate.ear

8.3.5 EARファイルを作成する」で作成します。

statelessjava_dynamic_generate.war

client\

Webサービスクライアントの開発で使用します。

src\

Webサービスクライアントのソースファイル(*.java)を格納します。「8.5.1 サービスクラスを生成する」および「8.5.2 Webサービスクライアントの実装クラスを作成する」で使用します。

classes\

コンパイルしたクラスファイル(*.class)を格納します。「8.5.3 Webサービスクライアントの実装クラスをコンパイルする」で使用します。

usrconf.cfg

8.6.1 Javaアプリケーション用オプション定義ファイルを作成する」で作成します。

usrconf.properties

8.6.2 Javaアプリケーション用ユーザプロパティファイルを作成する」で作成します。

カレントディレクトリのパスは,開発する環境に合わせて変更してください。

なお,以降の説明では,この表に示すディレクトリおよびファイル名を使用します。コマンド実行例やJavaソースなどで背景色付きの太字になっている部分は,この例で使用する指定値や生成される値を示します。構築する環境に合わせて読み替えてください。

また,この章で説明する開発例では,WebサービスとWebサービスクライアントを同じ環境で開発しますが,別の環境で開発することもできます。別の環境で開発する場合は,それぞれの環境に合わせて,カレントディレクトリのパスを読み替えてください。