`
wls981
  • 浏览: 137907 次
  • 性别: Icon_minigender_1
  • 来自: 桂林
社区版块
存档分类
最新评论

axis传递自定义类

    博客分类:
  • java
 
阅读更多

在axis1.4下开发一个webservice,要传递自定义类,需要声明如果序列化这个类,配置如下:

 

在server-config.wsdd中:

<service name="session" provider="java:RPC">
  <parameter name="allowedMethods" value="*"/>
  <parameter name="className" value="com.bxxk.yzscx.services.SessionService"/>
  <beanMapping qname="ns:SessionData" xmlns:ns="urn:SessionData" languageSpecificType="java:com.bxxk.yzscx.vo.SessionData"/>
  <beanMapping qname="ns:YdjwZxyh" xmlns:ns="urn:YdjwZxyh" languageSpecificType="java:com.bxxk.yzscx.common.entity.YdjwZxyh"/>
 </service>

 

在调用端:

String wsdlUrl = url + "?wsdl";
String nameSpaceUri = url;
Service service = new Service();
Call call = null;
call = (Call) service.createCall();
QName qn = new QName("urn:SessionData", "SessionData");
call.registerTypeMapping(SessionData.class, qn,
		new BeanSerializerFactory(SessionData.class, qn),
		new BeanDeserializerFactory(SessionData.class, qn));
qn = new QName("urn:YdjwZxyh", "YdjwZxyh");
call.registerTypeMapping(YdjwZxyh.class, qn,
		new BeanSerializerFactory(YdjwZxyh.class, qn),
		new BeanDeserializerFactory(YdjwZxyh.class, qn));

call.setOperationName(new QName(nameSpaceUri, "getSessionList"));
call.setTargetEndpointAddress(new java.net.URL(wsdlUrl));
rs = (String) call.invoke((Object[]) null);

 

其他都一样,记录一下。

分享到:
评论

相关推荐

    WebService中使用自定义类的五种解决方法

    在Web服务(WebService)开发中,我们经常需要传递自定义类的数据。然而,WebService通信的基础是XML或JSON,这些格式要求传输的数据能够被序列化和反序列化。默认情况下,只有基本数据类型和某些标准库中的对象可以...

    axis自定义数组对象

    本文将深入探讨如何在Axis框架下实现自定义数组对象的传递,这不仅是对框架特性的深入理解,也是提升Web服务功能性和灵活性的关键。 #### 二、关键概念解释 **1. 自定义数组对象:** - **定义:** 在Web服务中,...

    webServices学习之二——axis1传递复杂类型javabean

    这篇博客文章可能讨论了如何利用Axis1来处理非基本数据类型的交换,如自定义的JavaBean对象。 首先,我们需要理解什么是JavaBean。JavaBean是一种遵循特定规范的Java类,通常用于封装数据并提供getter和setter方法...

    axis2_demo实战 复杂对象传输 文件传输

    "传Object"是指在Web服务接口中可以传递自定义的Java对象。Axis2支持对象序列化和反序列化,使得对象可以被转换为XML格式在网络间传输,然后在接收端反序列化回对象。这对于跨系统的业务对象交换非常有用。 接着,...

    在axis1.4中传递复杂类型数组参数(ArrayMapping)

    在客户端,使用 Axis 的 Stub 或 Proxy 类来调用服务时,可以传递 Java 数组作为参数。这些数组会被自动转换为 SOAP 消息。同样,服务端接收请求后,ArrayMapping 会将 SOAP 消息解析成 Java 数组。 7. **自定义 ...

    axis2的API,axis2 API,axis2帮助文档

    Axis2的API提供了丰富的接口和类,让开发者可以自定义各种行为。以下是一些关键API: - **Service**: 表示Web服务的接口,用于创建、部署和管理服务。 - **Operation**: 表示服务中的一个操作,定义了请求和响应的...

    Axis2范例,对象传输

    - `(axis2)` 文件夹可能包含Axis2的配置文件、服务部署文件(.aar)、服务接口定义(WSDL)、客户端代码(Stub类)等。 - `src` 文件夹可能包含源代码,包括服务端和客户端的Java类。 - `build.xml` 或类似的文件...

    axis2 包括源码 文档

    通过阅读文档,开发者可以学习如何配置 Axis2,设置服务部署,处理消息传递,以及集成各种WS-*规范,如WS-Security(Web服务安全)和WS-ReliableMessaging(可靠消息传递)。 其次,`axis2-1.6.2-src.zip` 文件包含...

    axis2的教程 axis2入门

    2. **复合类型数据的传递**: Axis2支持复杂数据类型的传输,使得结构化的数据可以在Web Service之间安全地传递。 3. **services.xml文件发布Web Service**: Axis2提供services.xml文件来定义和管理服务,简化了...

    org.apache.axis jar

    7. **扩展与插件**:Apache Axis有一个强大的插件系统,允许开发者添加自定义的行为,如安全策略、性能优化等。例如,可以使用WS-Security插件实现Web服务的安全认证。 8. **错误处理**:当Web服务调用失败时,Axis...

    axis包最完整版包括axis.jar和axis-scheme.jar等

    同时,由于Axis是开源的,开发者可以根据需要自定义和扩展功能,使其更加符合特定项目的需求。在实际应用中,这些工具和库可以大大提高开发效率并减少错误,是Java Web服务开发不可或缺的部分。

    Axis1.4_开发指南

    此外,Axis还支持传递包含内部类的自定义对象以及通过RMI方式实现远程调用。 ### 抛出异常和传递文件 在开发WebService时,服务可能会遇到错误或异常。Axis提供了一种机制,允许开发者在服务中抛出异常,并通过...

    axis2-1.4.1-bin.zip

    Axis2的核心设计理念是模块化,它由多个模块组成,包括核心引擎、消息传递模块、服务部署模块等。这种设计允许开发者根据项目需求选择合适的模块,提高性能和灵活性。 **2. Web服务的创建** 使用Axis2,可以通过...

    Axis实现webservice完整实例

    你可以使用 Axis 提供的测试工具或者自定义的测试程序来进行测试。 ### 6. 注意事项 - **版本兼容性**:确保 Axis 版本与所使用的 Java 版本、应用服务器版本兼容。 - **错误处理**:在服务端和客户端都要考虑异常...

    Android环境下Ksoap连接Axis2

    本篇文章将详细介绍如何在Android环境中使用Ksoap2连接到Axis2服务,并且传递自定义类对象作为参数,以及如何处理XML响应。 **1. Android与Web服务通信基础** Android应用可以通过HTTP或HTTPS协议与Web服务进行通信...

    WebService大讲堂之Axis2,多个实例

    例如,SimpleService类中的getGreeting和getPrice方法都是public的,Axis2会自动将这些方法暴露为WebService操作。在编写完业务逻辑代码后,只需要将.class文件放入Web容器,例如Tomcat的相应目录下,即可完成...

    axis整合web.rar

    - 如果需要,创建并配置Axis的自定义模块或服务处理器。 - 将整个应用打包成WAR文件,并在Tomcat 7中部署。 7. **测试和调试**: 一旦部署,可以通过发送SOAP请求到服务URL来测试Web服务。可以使用像SoapUI这样的...

    AXIS2发布WebService

    - **消息处理**:AXIS2允许用户自定义消息处理器,实现对消息的拦截、修改或过滤,以满足特定需求。 - **安全**:AXIS2支持WS-Security标准,可以实现认证、加密和签名,保证Web服务的安全性。 - **模块扩展**:...

    axis2 高端教程

    6. 扩展性:Axis2允许添加自定义模块,如安全模块、缓存模块等,以满足特定需求。 通过阅读《Apache Axis2 - Axis2 Architecture Guide》和《Apache Axis2 - Axis2 Quick Start Guide》这两份文档,你可以更全面地...

    axis2经典讲解

    - 创建自定义模块类,继承AbstractPhaseInterceptor。 - 实现interceptSend()和interceptReceive()方法。 - 配置Axis2以加载自定义模块。 ##### 10. 使用soapmonitor模块监视SOAP请求与响应消息 - **监控工具**...

Global site tag (gtag.js) - Google Analytics