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

在 web 服务中,我已将其声明为上述内容,但它不采用泛型 hashmap 及其拾取 List 而不是 HashMap [] dataList。

  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 回答