`
yongpeng
  • 浏览: 29355 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

webservice 调用问题

阅读更多

webservice 方法如下 :
public GWDDNSQueryBean GWDDNSQueryInvoke(WebServiceClient wsclient,String ID) {
      try {
             Service service = new Service();
             Call call = (Call) service.createCall(); 
             QName qn = new QName("GWQuery", wsclient.getWebFuncName());
             QName qn1 = new QName("GWQuery", "GWDDNSQueryBean");  
              call.registerTypeMapping(GWDDNSQueryBean.class, qn1, new BeanSerializerFactory(GWDDNSQueryBean.class,
                      qn1), new BeanDeserializerFactory(GWDDNSQueryBean.class, qn1));
              call.setTargetEndpointAddress(new java.net.URL(wsclient.getWebServiceURL()));   
              call.setOperationName(qn);
              call.setOperationStyle(org.apache.axis.constants.Style.RPC);
              call.setOperationUse(org.apache.axis.constants.Use.ENCODED);
              call.addParameter("arg1",org.apache.axis.encoding.XMLTYPE.XSD_STRING, ParameterMode.IN);
              call.setReturnType(qn1, GWDDNSQueryBean.class);
             Object[] parameters = new Object[] {ID};         
             GWDDNSQueryBean resultBean=(GWDDNSQueryBean) call.invoke(parameters);
              return resultBean;
         } catch (Exception e) {
             CAP.trException(e);
             return null;
        }
    }

出现了序列化错误:

org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.

本来返回值call.registerTypeMapping方法已经处理过了,但还是报错

弄了好长时间搞定,去掉了几个地方,将方法换成如下:

public GWDDNSQueryBean GWDDNSQueryInvoke(WebServiceClient wsclient, String ID) {

        try {
            Service service = new Service();
            Call call = (Call) service.createCall();
            QName qn = new QName("GWQuery", wsclient.getWebFuncName());
            call.setTargetEndpointAddress(new java.net.URL(wsclient.getWebServiceURL()));
            call.setOperationName(qn);
            call.setReturnClass(GWDDNSQueryBean.class);
            Object[] parameters = new Object[] { ID };
            GWDDNSQueryBean resultBean = (GWDDNSQueryBean) call.invoke(parameters);
            return resultBean;
        } catch (Exception e) {
            CAP.trException(e);
            return null;
        }

}

 

很郁闷 !!!

  

分享到:
评论

相关推荐

    WebService调用的几种方式

    本文将深入探讨在Java环境中调用WebService的五种主要方式:Axis、CXF、HttpClient、MyEclipse反向生成以及XFire。 1. Axis:Apache Axis是最早且广泛使用的SOAP库,用于创建和消费Web服务。使用Axis调用WebService...

    Webservice 调用工具

    【Webservice调用工具】 Webservice调用工具是专门用于测试和交互Web服务的软件,它们使得开发者能够方便地发送请求并接收响应,以便验证Web服务的功能和性能。Web服务通常基于SOAP(Simple Object Access Protocol...

    C#webservice调用测试工具

    【标题】:“C# WebService调用测试工具” 在IT领域,Web Service是一种基于网络的、松散耦合的软件组件,它允许不同系统之间的数据交换。C# WebService调用测试工具是专为开发者设计的,用于测试和调试Web Service...

    WebService调用代码样例

    本示例主要关注的是如何使用Java进行WebService调用,这在企业级应用开发中非常常见,特别是在需要跨平台集成时。以下是关于这个主题的一些详细知识点: 1. **WebService的基本概念**: WebService是一种基于开放...

    webService调用实例 Demo

    【标题】:“webService调用实例 Demo” 在IT行业中,Web Service是一种常见的应用程序接口(API)形式,它允许不同系统间的交互,无论它们是用何种编程语言或运行在何种操作系统上。本“webService调用实例 Demo”...

    超简单的webservice调用

    【标题】"超简单的webservice调用"涉及的是在Java环境下使用Hutool库进行Web Service接口调用的基础知识。Web Service是一种基于网络的、松散耦合的软件组件交互方式,它允许不同系统间的应用共享数据和服务。在这个...

    SAP-WEBSERVICE调用案例

    ### SAP-WEBSERVICE调用案例 #### 一、引言 随着企业信息化建设的深入发展,SAP作为企业管理软件的佼佼者,在业务流程整合与优化方面扮演着至关重要的角色。而Web Service作为一种标准的跨平台服务交互方式,使得...

    WebService调用测试工具

    WebService调用测试工具,支持大部分wsdl调用。

    webservice接口调用实例

    7. **异常处理**:在调用过程中可能出现网络错误、服务端错误等问题,需要编写适当的异常处理代码来捕获并处理这些问题。 在实际应用中,Web Service接口调用还涉及到安全性、性能优化和版本控制等话题。例如,可以...

    WSDl生成WebService接口及调用

    在本主题中,我们将深入探讨如何使用WSDL生成WebService接口以及编写Test调用方法进行测试。 1. WSDL基础 WSDL文件是一个XML文档,它描述了服务的位置(endpoint)、使用的消息格式(message)和服务提供的操作...

    WebService调用技术文档

    **WebService调用技术文档** **一、WebService简介** WebService是一种基于开放标准的Web应用程序,它能够提供跨平台、跨语言的互操作性。通过使用XML(可扩展标记语言)进行数据交换,SOAP(简单对象访问协议)...

    VC++中WebService服务的调用

    在VC++中调用WebService服务是一项常见的任务,尤其在跨平台通信、系统集成或扩展应用程序功能时。WebService是一种基于Web的、松耦合的服务,它使用标准的HTTP协议进行通信,并通过XML(eXtensible Markup Language...

    REST WebService 调用工具类

    相信大家在调用rest webservice通常使用httpclient.该示例代码是使用httpconnection的形式,以POST和GET两种方式提交调用REST WebService。在项目中一直使用的工具类,分享给大家

    短信验证码Webservice调用

    短信验证码Webservice调用是现代Web应用中常见的一种安全验证机制...总之,短信验证码Webservice调用是提升用户体验和系统安全的重要手段。通过合理的API设计和安全实践,我们可以构建一个高效、可靠的短信验证码系统。

    webservice调用小工具

    挺好用的webservice开发工具.直接输入webservice地址,然后输入入参,即可调用.

    MVC调用webService

    **MVC调用WebService详解** 在C#的MVC(Model-View-Controller)框架中,调用WebService是一项常见的任务,通常用于实现客户端与服务器之间的数据交互。在本例中,我们将探讨如何在MVC应用中使用JavaScript进行异步...

    webservice调用,传参代码样例

    Web服务(WebService)是一种基于标准协议的,可互操作的软件接口,允许不同系统之间进行数据交换和功能调用。在本案例中,我们将重点讨论如何使用Axis框架来调用Web服务并传递参数。 首先,我们需要理解Web服务的...

    webservice调用常见问题

    ### WebService调用常见问题详解 #### 一、概述 在使用Visual Studio 2008进行Web开发的过程中,开发者可能会遇到一个常见的问题:在建立了Web Service应用程序之后,尝试在ASP.NET环境中调用该服务时,往往会出现...

    在WinForm程序中调用WebService

    在WinForm应用程序中调用WebService是一项常见的任务,它允许客户端应用程序与远程服务器上的服务进行交互,从而实现数据交换和功能扩展。以下是如何在WinForm中实现这一操作的详细步骤及涉及的相关知识点: 1. **...

Global site tag (gtag.js) - Google Analytics