- PR -

Apache Axis による複合型データの送受信について

1
投稿者投稿内容
タカチ
会議室デビュー日: 2004/08/04
投稿数: 12
投稿日時: 2004-08-04 12:03
初めて投稿させていただきます。
宜しくお願い致します。

現在、大学の卒業研究で、「Apache AXISによるWebサービス
の提供」に取り組んでいます。

Apache Axisから、AXISクライアントに対して複合型のデータ
の送信を試みているのですが、単純型の要素のみで構成された複合型
データは送信できたのですが、複合型の要素を含む複合型のデータ送信
がうまくいきません。

そもそも、SOAPで複合型の要素を含む複合型の送信は可能なので
しょうか。

どなたかご存知な方いらっしゃいましたら
ご紹介頂けないでしょうか。

宜しくお願いいたします。
タカチ
会議室デビュー日: 2004/08/04
投稿数: 12
投稿日時: 2004-08-04 19:29
自己レスです。

上記、wsddファイルの<Beanmapping>タグの内容に誤りがあったようです。
現在は、複合型の要素を含む複合型のデータの送受信が問題なく行えています。

Amazonが提供しているSOAPのインターフェースでも、複合型を含んだ
複合型を返しており、「そもそも・・・できない」なんてことはないようです。

以上です。


montague
会議室デビュー日: 2004/06/16
投稿数: 2
投稿日時: 2004-09-09 14:51
はじめまして。
実は私も目下同様の問題にぶつかっております。
よろしければ複合型の要素を含む複合型のデータの送受信について、
<beanMapping>タグの書き方の例をご提示願えないでしょうか。
名前空間を階層化してJavaの集約関係を反映させるのでしょうか?

よろしくお願いいたします。
タカチ
会議室デビュー日: 2004/08/04
投稿数: 12
投稿日時: 2004-09-13 11:38
お世話になります。
タカチです。

 引用----------------------------------------------------------
名前空間を階層化してJavaの集約関係を反映させるのでしょうか?
-------------------------------------------------------------
すみません、恥ずかしながら詳しいことはよくわかっていません。
が、下記のように記述しました。
##############################################################
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"
xmlns:ns1="HukugouDataSendService" >

<service name="HukugouDataSendService" provider="java:RPC">
<parameter name="className" value="SendData"/>
<parameter name="allowedMethods" value="*"/>

<beanMapping qname="ns:HukugouBean" xmlns:ns="urn:hukugouBean"
languageSpecificType="java:HukugouBean"/>
</service>
</deployment>
##############################################################
montague
会議室デビュー日: 2004/06/16
投稿数: 2
投稿日時: 2004-09-17 10:55
タカチさん、どうもありがとうございます。

私の方でもうまくいきました。
結局、「名前空間を階層化してJavaの集約関係を反映させる」必要はなく、
同じ名前空間に親も子も入れてOKでした。
サンプルのWSDDを以下に書きます。これはリクエストもレスポンスも
複合型の複合型になっているものです。

<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java" xmlns:myNS="urn:Inventory">
<service name="Inventory" provider="java:RPC">
<parameter name="className" value="inv.Inventory"/>
<parameter name="allowedMethods" value="*"/>
<beanMapping qname="myNS:GetInventoryResponse" languageSpecificType="java:inv.GetInventoryResponse"/>
<beanMapping qname="myNS:GetInventoryRequest" languageSpecificType="java:hloan.GetInventoryRequest"/>
<beanMapping qname="myNS:GetInventoryResponseDetail" languageSpecificType="java:inv.GetInventoryResponseDetail"/>
<beanMapping qname="myNS:GetInventoryRequestDetail" languageSpecificType="java:inv.GetInventoryRequestDetail"/>
</service>
</deployment>

以上です。どうもありがとうございます。
1

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