2012-04-23 16 views
1

私はAxis2 java2wsdlツールでいくつかのテストを行っており、単純なWebサービスはほとんど作成していません。JavaからWSDLへのデータ型

最初に作成したのは、2つの浮動小数点数を入力する簡単な加算メソッドです。 java2wsdlコマンドは問題のないWSDL文書を作成しました。次の私は、文字列の配列を返すメソッドを持つ別のサービスを作成しましたが、私は、ツールが生成したWSDLデータ型に問題がありました:

Java2WSDLのが生成します。

`<xs:element minOccurs="0" name="return" nillable="true" type="xs:anyType"`/> 

そしてあるsoapUIクライアントと私はエラーを得ました: "

<xs:element maxOccurs="unbounded" name="return" type="xs:string"/> 

そして、それは働いた:に 『手で」私はそれを修正

を』タイプをシリアル化することはできません。

Javaのソースコードは次のとおりです。だから、

package Base; 

public interface Base 
{ 
public String[] getNames();  
} 

、ツールはそのマッピングをした理由を私は理解していない(String []型のxsへ:anyTypeに)

があることを特別な方法Java2コードでjava2esdlのaxis2が正しいデータ型を作成するようにする必要がありますか?

ありがとうございました。

+0

plsにはwsdlの作成に使用したコマンドラインがあります。 – shashankaholic

+0

こんにちは、これはコマンドです:$ wsdl2java.sh -o。 -ss -sd -ssi --noBuildXML --noWSDL - または-S ./src -R ./META-INF -uri WSDL_NAME.wsdl – user1274605

答えて

1

xs:anyTypeとしてタイプを指定する場合、xs:type属性を使用して入力メッセージ内に正確なXSDタイプを指定する必要があります。そうでないと、着信メッセージのタイプを識別できません。これはあなたに役立つかもしれませんhttp://ssagara.blogspot.com/2011/07/how-to-get-best-use-of-axis2-object.html

関連する問題