- PR -

Axis の WSDL2Java と XML 埋め込みについて

1
投稿者投稿内容
べう
会議室デビュー日: 2004/01/23
投稿数: 17
投稿日時: 2004-01-23 12:33
初めまして。
Axis を使用して SOAP インタフェースを作ろうとしており、SOAP メッセージに任意の XML を素のままで組み込む (添付ではありません) ことを考えているのですが、WSDL2Java がどうにも上手く行きません。上手く行く方法があったらお教えください。

具体的には、SOAP レスポンスの一部に、W3C の SMIL 言語を入れようとしています。WSDL の wsdl:definitions 要素に xmlns:smil20lang="http://www.w3.org/2001/SMIL20/Language" 属性を加え、この要素の直下に <import namespace="http://www.w3.org/2001/SMIL20/Language" location="http://www.w3.org/2001/SMIL20/smil20-language.xsd"/> と置きました。

上記だけで WSDL2Java を -a オプションで動かすだけで、途中で {http://www.w3.org/2001/SMIL20/}HOGEHOGE already exists というエラー(警告?) が沢山出ます。その後、一応 SMIL 関連のソースが生成されてはいます。
SMIL はルート要素が smil、その下に head, body 要素があり、更にその下に色々な要素が来る形になっているのですが、生成された head 要素, body 要素関連のソースを読むと、メンバが全く無い状態になっています。smil 要素のソースの方は特に問題は無いようで、head, body 要素をメンバに持つ形になっています。

WSDL で SOAP メッセージ内に smil 要素を記述すべく <wsdl:part name="smil" type="smil20lang:smilType"/> を記述しても上記は特に変化がありません。

もともと SOAP に任意の形の XML を埋め込むこと自体ができないのでしょうか?
kan
ベテラン
会議室デビュー日: 2002/11/28
投稿数: 55
投稿日時: 2004-01-25 18:34
Axis 1.1ではうまくいかないと思います。
以下を試してみてはどうでしょう?

Create Web services using Apache Axis and Castor
How to integrate Axis and Castor in a Document-style Web service client and server
http://www-106.ibm.com/developerworks/webservices/library/ws-castor/
kan
ベテラン
会議室デビュー日: 2002/11/28
投稿数: 55
投稿日時: 2004-01-25 18:37
すみません。補足すると、うまくいかないというのは、Document-styleのWSDL
に対してWSDL2Javaを実行するのがうまくいかないという意味です。
Axis 1.2では改善するとリリースに書いてありました。今の1.2 alphaで対応
しているかは確認していません。
べう
会議室デビュー日: 2004/01/23
投稿数: 17
投稿日時: 2004-01-26 15:35
kan さん、フォローありがとうございます。

なるほど、ちらっと見、それらしいですね (すみません、英語苦手なもので ^^。早速 1.2 系で試してみたいと思います。

ところで、SOAP メッセージの中に XML 文書を丸ごと入れてしまう形というのは一般的ではないのでしょうか。WEB を色々漁ってはいたのですが、見つけることができませんでした。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-01-26 15:56
引用:

べうさんの書き込み (2004-01-26 15:35) より:
ところで、SOAP メッセージの中に XML 文書を丸ごと入れてしまう形というのは一般的ではないのでしょうか。WEB を色々漁ってはいたのですが、見つけることができませんでした。


いいえ。ただしそれはメッセージング型(ドキュメント型)のSOAPになりますから、与えられた
XMLデータは自力でパースする方法を考える必要があります。

「Webサービス RPC メッセージング(またはドキュメント)」で検索するといろいろ出て
きますよ。
べう
会議室デビュー日: 2004/01/23
投稿数: 17
投稿日時: 2004-01-26 17:04
ああすみません、どうも基本がわかっていなかったようです。
なるほどサービス様式には RPC, Document, Wrapped, Message の四つが並存していたのですね。RPC オンリーで実装しようとしていました。お恥ずかしい。
1

スキルアップ/キャリアアップ(JOB@IT)