1

Intellijにある Amazon WSDL から Java コードを生成しました。それはうまくいったように見えました。ただし、このページにあるチュートリアルに従っていると、問題が発生しました。Java コードの最後の行は、AWSECommerceServicePortType クラスからメソッド itemSearch を呼び出しています。そのメソッドに対して生成された唯一のメソッド記述は

@WebMethod(operationName = "ItemSearch", action = "http://soap.amazon.com/ItemSearch")
             @RequestWrapper(localName = "ItemSearch", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01", className = "com.shopit.amazon.ItemSearch")
             @ResponseWrapper(localName = "ItemSearchResponse", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01", className = "com.shopit.amazon.ItemSearchResponse")
             public void itemSearch(
    @WebParam(name = "MarketplaceDomain", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    String marketplaceDomain,
    @WebParam(name = "AWSAccessKeyId", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    String awsAccessKeyId,
    @WebParam(name = "AssociateTag", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    String associateTag,
    @WebParam(name = "XMLEscaping", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    String xmlEscaping,
    @WebParam(name = "Validate", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    String validate,
    @WebParam(name = "Shared", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    ItemSearchRequest shared,
    @WebParam(name = "Request", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01")
    List<ItemSearchRequest> request,
    @WebParam(name = "OperationRequest", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01", mode = WebParam.Mode.OUT)
    Holder<OperationRequest> operationRequest,
    @WebParam(name = "Items", targetNamespace = "http://webservices.amazon.com/AWSECommerceService/2011-08-01", mode = WebParam.Mode.OUT)
    Holder<List<Items>> items);

例で示したものよりも多くのパラメーターを渡す必要があり、コンパイル時にエラーが発生します。Java コードを生成するために別の設定を使用する必要がありますか。

4

2 に答える 2

-2

Java用の公式のaws sdkを使用する方がはるかに良いと思います:http://aws.amazon.com/sdkforjava/

于 2013-03-29T06:27:36.363 に答える