首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Axis Axis服务客户端中的多个参数

Axis Axis服务客户端中的多个参数
EN

Stack Overflow用户
提问于 2011-07-26 16:17:55
回答 1查看 3.8K关注 0票数 0

这是我第一次编写web服务客户端,有趣的是,我已经编写了web服务;)

无论如何,我正在使用axis通过以下代码调用WS

代码语言:javascript
复制
  String endpoint =
            "http://localhost:8080/SpeechServices/SpeechWebService/SpeechWebService";

    Service service = new Service();
    Call call = (Call) service.createCall();
    call.setTargetEndpointAddress(new java.net.URL(endpoint));
    call.setOperationName(new QName("http://ws.ecw.com/", "parseNotes"));
    HashMap ret = (HashMap) call.invoke(new Object[]{"", "", ""});
    System.out.println("Sent 'Hello!', got '" + ret + "'");

我的服务返回一个HashMap,并有三个输入参数apuId,providerId,注意我不确定如何将这些参数发送到WS,我确信它只需要几个方法调用就可以了,例如: call.setProperty。请指教

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-27 15:50:14

好了,这就是答案,它还不能完全工作,因为Axis似乎不支持将hashmap作为yet服务响应。

代码语言:javascript
复制
    String endpoint =
            "http://localhost:8080/eCWServices/StructSpeech/StructSpeech";
    Service service = new Service();
    Call call = (Call) service.createCall();
    call.setTargetEndpointAddress(new java.net.URL(endpoint));
    call.setOperationName(new QName("http://ejb.ecw.com/", "parseNotes"));
    call.addParameter("notes", org.apache.axis.Constants.XSD_STRING, ParameterMode.IN);
    call.addParameter("apuId", org.apache.axis.Constants.XSD_STRING, ParameterMode.IN);
    call.addParameter("providerId", org.apache.axis.Constants.XSD_STRING, ParameterMode.IN);
    call.setReturnType(XMLType.SOAP_MAP);
    HashMap  ret = (HashMap) call.invoke(new Object[]{"","",""});
    System.out.println("Sent 'Hello!', got '" + ret + "'");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6827147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档