本ドキュメントはS2Axis-1.0.3 について記述しています.旧バージョンについては該当バージョンの配布ファイルに含まれているドキュメントを参照してください.
s2-axis.dicon
S2Axisが提供するdiconファイルです.s2-axis-1.0.2.jarファイルの中に含まれているので,ロケーションを気にすることなくincludeすることができます.
サーバが側では必須となります.
クライアント側では,ハンドラやWSDDのデプロイをする場合にのみ必要となります.
名前 |
C |
S |
内容 |
説明 |
axis-deploy |
○ |
○ |
文字列 |
内容で指定された文字列をパス名とするWSDDファイルをAxisにデプロイします.WSDDファイルのパス名はクラスパスからの相対パスで指定します.
WSDDファイルの中で指定されたサービスやハンドラのインスタンス管理はAxisによって行われます.S2およびS2Axisは関与しません.
WSDDファイルの中では,S2Axisによってデプロイされたサービスやハンドラを参照することができます. |
axis-engine |
○ |
○ |
文字列 |
サービスやハンドラ,WSDDをデプロイする対象となるAxisエンジンの取得方法を指定しますします.
詳細は「Axisエンジンの取得方法」を参照してください. |
プロパティ |
C |
S |
内容 |
説明 |
axis-handler |
○ |
○ |
空 |
親要素で記述されたコンポーネントをハンドラとしてAxisにデプロイします. |
axis-service |
× |
○ |
空 |
親要素で記述されたコンポーネントをサービスとしてAxisにデプロイします.
コンポーネントがメソッドの定義されたインタフェースを実装している場合は,そのメソッドが公開されます.インタフェースを実装していなければ,java.lang.Object 型で定義されているものを除いたpublic メソッドが公開されます. |
ServiceDef 型のコンポーネント |
親要素で記述されたコンポーネントをサービスとしてAxisにデプロイします.
詳細はServiceDef の説明を参照してください. |
文字列 |
親要素で記述されたコンポーネントをサービスとしてAxisにデプロイします.
サービスの詳細は,内容で指定された文字列をパス名とするWSDDファイルに記述された<service> 要素の指定に従います.WSDDファイルのパス名はクラスパスからの相対パスで指定します. |
サーバ側で使用するコンポーネントで,<meta> 要素の内容に設定されます.
サービスとして公開するコンポーネントの詳細を指定するために使われます.
プロパティ
プロパティ |
型 |
説明 |
serviceType |
String |
公開するサービスの型を指定します.特定のインタフェース型を指定することで,不要なメソッドが公開されることを防ぐことが出来ます.
省略するとコンポーネントの型になります.ただし,コンポーネントがメソッドの定義されたインタフェースを一つだけ実装している場合には,そのインタフェース型になります. |
allowMethods |
boolean |
公開するメソッドの名前を指定します.複数のメソッドを指定する場合は空白で区切ります.
省略すると次のようになります.
- 1.
serviceType が指定されている場合
- 指定された型が持つ
public なメソッドが全て公開されます (ただし,java.lang.Object で定義されているメソッドは公開されません).
- 2.サービスがメソッドの定義されたインタフェースを実装している場合
- インタフェースで定義されたメソッドが全て公開されます.
- 3.サービスがインタフェースを実装していない場合
- サービスが持つ
public なメソッドが全て公開されます.ただし,java.lang.Object で定義されているメソッドは公開されません.
|
provider |
String |
サービスプロバイダの種類を指定します.
現在サポートされているのはRPC とMsg だけです.省略するとRPC になります. |
メソッド
メソッド |
説明 |
addTypeMapping(TypeMapping) |
タイプマッピングを登録します.TypeMappingついてはこちらを参照してください. |
クライアント側で使用するコンポーネントで,Web サービスへの動的な接続に使用されます.
プロパティ
プロパティ |
型 |
説明 |
baseURL |
String |
接続するサービスの基礎になるURLを指定します.
このURLと,S2RemotinのRemotingInterceptorをアスペクトとして設定されたプロキシコンポーネントの名前
(<component>要素のname属性の値) を連結したURLが,接続するサービスのURLとなります. |
timeout |
int |
サービス呼び出し時のタイムアウト値(ミリ秒)を指定します。 |
メソッド
メソッド |
説明 |
addTypeMapping(TypeMapping) |
タイプマッピングを登録します.TypeMappingついてはこちらを参照してください. |
サーバ側で使用するコンポーネントで,ServiceDef コンポーネントに設定されます.
サービスとして公開するコンポーネントで使用するタイプマッピングの詳細を指定するために使われます.
プロパティ |
型 |
説明 |
type |
Class |
Java型のクラスを指定します.このプロパティは必須です. |
namespaceURI |
String |
XML型の名前空間URIを指定します.省略するとJava型の型のパッケージから導出されます. |
namespacePrefix |
String |
XML型の名前空間接頭辞を指定します.省略するとデフォルト名前空間になります. |
localPart |
String |
XML型のローカル名を指定します.省略するとJava型のクラス名が使われます. |
serializer |
Class |
シリアライザファクトリを指定します.省略するとAxisのBeanSerialzierFactory が使われます. |
deserializer |
Class |
デシリアライザファクトリを指定します.省略するとAxisのBeanDeserialzierFactory が使われます. |
encodingStyle |
String |
エンコーディングスタイルを指定します.省略するとencoded が使われます. |
S2Remotingが提供するコンポーネントです.
クライアント側でWebサービスをコンポーネントとして使用する場合に,このコンポーネントをアスペクトとして使用します.
Axisが提供するコンポーネントです.
クライアント側で動的呼び出しをする場合に必要となります.
公開されるサービスの名前
- WSDDを指定された場合
- WSDDに記述された
<service> 要素のname 属性の値が使われます
context-path/services/name
- diconファイルに名前空間が指定されていない場合
- diconファイルの
<component> 要素のname 属性の値が使われます.
context-path/services/name
- diconファイルに名前空間が指定されている場合
- diconファイルの
<components> 要素のnamespace 属性の値と<component> 要素のname 属性の値が使われます.
context-path/services/namespace/name
内容 |
意味 |
(指定なし) |
"default" を指定した場合と同じです. |
"default" |
S2コンテナにjavax.servlet.ServletContext が設定されていれば"default-server" ,そうでなければ"default-client" を指定した場合と同じです. |
"default-client" |
S2コンテナからjavax.xml.rpc.Service を実装したコンポーネント (サービスまたはサービスロケータ) を取得し,そのエンジンを使用します. |
"default-server" |
最初にservlet:AxisServlet でエンジンを検索し,見つからなければservlet:AxisEngine でエンジンを検索します. |
"s2:name" |
S2コンテナからname で取得したコンポーネントをAxisエンジンとして使用します. |
"servlet:name" |
ServletContext からname で取得した属性をAxisエンジンとして使用します. |
(その他) |
S2コンテナから指定された文字列で取得したコンポーネントをAxisエンジンとして使用します. |
|