0
       Response profile(@WebParam(name = "key") String key,
        @WebParam(name = "data") HashMap<String, Object>[] dataList);

Webサービスでは、上記のように宣言しましたが、ジェネリックハッシュマップを取得せず、HashMap [] dataListの代わりにListを取得しています。

  public Response profile(
    @WebParam(name = "key", targetNamespace = "")
    String key,
    @WebParam(name = "data", targetNamespace = "")
    List<HashMap> data);
4

1 に答える 1

0

Web サービスは WSDL によって記述されるため、WSDL で記述できるものに限定されます。WSDL はクロス言語、クロス プラットフォームであり、単純にジェネリックを行いません。配列、マップ、プリミティブ型を処理します。WSDL の背後にある考え方は、サービスを Java または COBOL で作成できるということです。どちらでもかまいません。

ああ: 実際に重要でない限り、実装クラスでパラメーターと戻り値の型を宣言しないでください。Mapではなく使用しHashMapます。

于 2012-07-18T04:03:31.620 に答える