调用WebService 出现org.xml.sax.SAXException: SimpleDeseriali
? ? 1。如果出现这个异常时, 首先要确定你的 webservice 传入参数是对象还是别的, 如果是对象的话, 就说明你传入的对象有关联的对 ? 象没有被序列化,比如说, 你的传入对象 java B , 这个java? B 与 Java A 有关联, 例如 B 中引用了? A , 但是你只传入了 B 的 ? class 到 webservices,这是,必须将你的 A 对象也序列化后,客户端调用 webservice 时, 会将 A 序列化后返回到客户端, 下面给出个简单的事例: ? ??? TypeMappingRegistry registry = service.getTypeMappingRegistry();?? ??????? mapping.register(type,qname,new BeanSerializerFactory(type,qname),?? ? ? ?2。 一般情况下上述代码可以解决这个报错, 如果还是不行的话, 请检查你的客户端调用版本和服务器端webservice 版本是否一些, ? 本人就吃过一次亏,服务器端使用 axis2 生成的服务, 我用 axis 调用,也会报如上错误, 因为 axis2 在传入、传出参数的时候做了一些 ? 序列化的处理, 所以如果使用 axis2 生成的服务, 需要使用 RPCServiceClient 的方式来调用。 下面给出一个简单的事例: ? ???? ??? /**? ???????? returnStr = om.toString(); ? ? ?? 要使用 下面事例进行调用 axis2 的话, 则需要加载 axis2 中的 jar 包, jar 引用如下: ? ?axiom-api-1.2.7.jar ?axiom-impl-1.2.7.jar ?axis2-adb-1.4.1.jar ?axis2-kernel-1.4.1.jar ?backport-util-concurrent-3.1.jar ?commons-codec-1.3.jar ?neethi-2.0.4.jar ?stax-api-1.0-2.jar ?wstx-asl-3.2.4.jar ?XmlSchema-1.4.3.jar (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- [Angular]路由跳转
- vim – 跳转到最后一行,但保持在同一列
- Bootstrap和Angularjs配合自制弹框的实例代码
- Angular 2使用FileSaver.js的最佳方法
- 动态调用 WebService
- Bootstrap中的fileinput 多图片上传及编辑功能
- MVC5 + EF6 + Bootstrap3 (15) 应用ModelState和Data Annot
- 详谈Linux写时拷贝技术(copy-on-write)必看篇
- 在Docker构建期间如何在Dockerfile中支持http_proxy或逻辑控
- templates – PlayFramework的Scala模板中的动态参数