Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド
|
目次
索引
|
18.4 使用できるWSDLについて
Interstage Webサービスで使用するWSDLが、WSDLの仕様以外に従う必要のある事項について説明します。
本節で使用しているXMLのネームスペースのprefixは、以下のとおりです。
- “wsdl”が表すネームスペース:“http://schemas.xmlsoap.org/wsdl/”
- “soap”が表すネームスペース:“http://schemas.xmlsoap.org/wsdl/soap/”
- “mime”が表すネームスペース:“http://schemas.xmlsoap.org/wsdl/mime/”
- “wsibp”が表すネームスペース:“http://ws-i.org/profiles/basic/1.1/xsd”
■型定義
- wsdl:typesでの型定義には、XMLスキーマのみ使用できます。個々のデータ型については、“Javaのデータ型とXMLのデータ型との対応”を参照してください。
- XMLインスタンスの解釈が不定となる、スキーマ定義(例:出現回数が固定でなくかつ名前が同じ複数のelement定義が連続したsequenceモデル)に注意してください。そのような定義のデータは、実際の通信において、受信時の解釈も不定となります。
- 1つのcomplexType定義に、複数のany定義が含まれないようにしてください。
■メッセージ
- styleが“document”の場合、wsdl:messageに含まれるwsdl:partは1つ以下でなければなりません。
- wsdl:partは、type属性またはelement属性のいずれか一方だけを指定できます。
■ポートタイプ
- wsdl:portTypeには、request-response型のオペレーションだけを使用できます。
- operation要素のname属性には、1つのwsdl:portType内でユニークな値を指定しなければなりません。
■バインディング
- wsdl:bindingには、SOAPバインディングおよびMIMEバインディングだけを使用できます。
■サービス
- 1つのWSDLに、wsdl:serviceは1つ以上存在するようにしてください。
■WSDL拡張
- WSDLの拡張要素/属性には、SOAPバインディングおよびMIMEバインディングで規定されたものだけが使用できます。
■SOAPバインディング
- soap:bindingのtransport属性の値は、“http://schemas.xmlsoap.org/soap/http”でなければなりません。
- soap:headerは使用できません。
- 1つのWSDLで、styleの指定は“document”または“rpc”のいずれかに統一されていなければなりません。
- styleが“document”の場合、useには“literal”のみ指定できます。
- 1つのWSDLで、useの指定は“literal”または“encoded”のいずれかに統一されていなければなりません。
- useの指定は省略できません。
- encodingStyle属性を指定する場合は、値は“http://schemas.xmlsoap.org/soap/encoding/”でなければなりません。
■MIMEバインディング
以下の内容のWSDLはサポートされません。
- mime:part要素が複数のmime:content要素を含む場合
- wsibp:swaRefデータ型がxsd:element要素のtype属性またはwsdl:part要素のtype属性以外の場所から参照されている場合
■その他
以下のいずれかがDOSデバイス名と一致するWSDLは使用できません。
- 型名
- ポートタイプ名
- サービス名
- ネームスペースの構成要素('.'や'/'、':'で区切られた文字列)
該当する場合、iswsgen serverコマンドまたはiswsgen clientコマンドがisws15208やisws10443、isws10314などのエラーになる場合があります。
ただし、ネームスペースの構成要素のみが該当する場合は、iswsgenコマンドを以下のように実行することでWSDLを使用できます。
- -PkgNSmappingFileオプションでJavaパッケージ名の構成要素がDOSデバイス名を含まないように指定する
Copyright 2008 FUJITSU LIMITED