クライアントからListを受け取る挑戦の巻(その1)
s2-axis-examplesで、org.seasar.axis.examples.ex03のインタフェイスをListのメソッドを追加してみる。
BookshelfImplに下の実装、Bookshelfにインターフェイス
public List getBooksList() { List list = new Vector(); list.addAll(books.values()); return list; }
http://localhost:8080/s2-axis-examples/services/Bookshelf?wsdlで見てみると、
<wsdl:part name="getBooksListReturn" type="impl:ArrayOf_xsd_anyType" /> - <complexType name="ArrayOf_xsd_anyType"> - <complexContent> - <restriction base="soapenc:Array"> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:anyType[]" /> </restriction> </complexContent> </complexType>
になってしまう。webサービスで流れる構造上はObjectの配列のようです。
Delphiがわでは、当然かもしれけど、自動生成をめげているような感じです。
今日はマシンは夜まで触れないと思います。
wsdlを自分で書けばなんかできるのかもと甘い期待を持ってみる。