【问题标题】:How can I create Java web service (jax-ws) with array or List as a parameter如何使用数组或列表作为参数创建 Java Web 服务 (jax-ws)
【发布时间】:2010-12-09 09:56:57
【问题描述】:

我遇到了一个使用数组或列表作为参数的 Web 服务的问题。示例如下:

@WebMethod
public String printList(@WebParam(name = "list") List<String> list) {
    String result = "";
    if(list == null) {
        result = "list is null";
    } else if(list.size() == 0) {
        result = "list is empty";
    } else {
        for(String elem : list) {
            result += elem + " ";
        }
    }
    return result;
}

当我从 Web 服务客户端调用 printList 时,结果总是“列表为空”。当我使用字符串数组时也是如此。我应该使用一些额外的注释吗?

【问题讨论】:

    标签: java web-services jakarta-ee jax-ws


    【解决方案1】:

    你的代码完美,看来你叫错了,

    您可以直接删除第二个条件,否则将起作用

    【讨论】:

    • 感谢您的回答。如果我调用同一个 Web 服务的其他方法,例如采用一个 String 参数,一切都会完美运行 - 传递的 String(或 long、int 或其他)参数既不为空也不为空。所以我认为我正确地称呼它。是否有可能我在生成 Web 服务时做错了什么?
    • @Pawel 尝试使用 SOAP ui 一次。从服务器端看起来很完美
    • life.java 它适用于soapui - 你是对的,它必须是客户端的东西。谢谢!
    【解决方案2】:

    JAX Webservice 中的数组数据类型不支持,所以你需要使用库和工具来做这样的事情......

    【讨论】:

      猜你喜欢
      • 2012-08-09
      • 2011-06-24
      • 2011-12-16
      • 1970-01-01
      • 2011-10-17
      • 1970-01-01
      • 2011-04-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多