昨天写完程序并部署Service之后,一直都在抛出接口不匹配的异常,于是我就写了个简单的接口,只传入一个String类型的参数,结果运行正常。然后我又写了个只传入Integer类型参数的接口,果不出所料,又发生了接口不匹配的异常。接下来我就开始改Client端代码:
params.addElement(new Parameter("eventStatus",Integer.class, new Integer(1), null));
params.addElement(new Parameter("eventStatus",int.class, new Integer(1), null));
params.addElement(new Parameter("eventStatus",int.class, 1, null));
params.addElement(new Parameter("eventStatus",Intege.class, 1, null));
结果统统失败,弄的我都要抓狂了。
今天到了公司以后,跟组长说了这件事情,组长说让我换用AXIS试试看,我到ws.apache.org/axis上面看了看文档,在user guide里面给出的例子和我的代码差别很大,我就只好按着它的例子重新改代码
写完以后,配环境变量配的快要抓狂……部署的时候又是一头雾水……最后始终没有成功……最后回到宿舍才想到,AXIS和Apache SOAP Server不过都是服务器而已,不应该存在规范上的区别,也就是不应该会影响到客户端的程序,于是我就按照最开始的代码,把Service部署好,启动 Tomcat,从WSDL中找到对应的信息
- <wsdl:service name="ServiceService">
- <wsdl:port binding="impl:serviceSoapBinding" name="service">
- <wsdlsoap:address location="http://localhost:8080/axis/services/service" />
- </wsdl:port>
- </wsdl:service>
在xml配置文件中,把location赋值给URL,把name赋值给TargetObjectURI,运行Client,一切OK
不知道是不是因为机器的问题,在公司的思路远远不如在宿舍啊
不过今天至少让我很熟练的掌握了如何手工部署AXIS服务,创建一个wsdd文件,我把它命名为deploy.wsdd
- <deployment name="lijian" xmlns="http://xml.apache.org/axis/wsdd/"
- xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
- <service name="service" provider="java:RPC">
- <parameter name="className" value="Service" />
- <parameter name="allowedMethods" value="setAlarmInfo" />
- </service>
- </deployment>
把这个文件放到Tomcat/webapps/axis/WEB-INF/目录下,把service的类放到WEB-INF/classes/目录下,把 axis.jar;jaxrpc.jar;commons-logging-1.0.4.jar;commons-discovery-0.2.jar;saaj.jar 放到classpath里面,启动Tomcat之后,到webapps/axis/WEB-INF目录下运行:
java org.apache.axis.client.AdminClient deploy.wsdd
之后可以访问
http://localhost:8080/axis/ 来查看刚才部署的service对应的wsdl了
分享到:
相关推荐
本文将以一个简单的“SayHello”服务为例,演示如何使用Axis开发WebService。 **2.1 DynamicInvocationInterface (DII) 开发方式** DII是一种动态调用接口,允许客户端动态调用服务器端的服务方法。 **步骤1:编写...
2. **部署服务**: 在`axis2.xml`中配置服务,或者使用更简单的方式——无需任何配置文件即可部署服务。 3. **客户端调用**: 使用Java或.NET客户端调用部署好的Web服务。 **4.2 示例代码** - **服务端代码**: ```...
"示例,开发者可以掌握Web服务的基本概念,为进一步探索更复杂的Web服务开发奠定基础。尽管Axis1可能已经有些过时,但其背后的原理对于理解Web服务的机制仍然非常有价值。随着技术的发展,如RESTful API的流行,理解...
WebService——AXIS详解 在IT领域,WebService是一种基于标准的、平台无关的、可以在不同系统之间交换数据的方式。它利用XML(可扩展标记语言)作为数据格式,HTTP作为传输协议,SOAP(简单对象访问协议)作为消息...
本教程将详细介绍如何在Eclipse环境中开发WebService以及各种调用方式。 首先,我们需要了解WebService的基本概念。WebService是一种通过Web进行交互的应用程序,它使用XML(可扩展标记语言)作为数据格式,SOAP...
本篇主要介绍两种常用的WebService框架——Axis和XFire(现已被CXF合并)的开发流程。 1. **Axis**:Axis是Apache软件基金会开发的开源SOAP WebService框架,它支持多种编程语言,如Java、Python等。Axis以其良好的...
标题 "Axis 自动生成WebService" 涉及到的是在IT行业中创建和使用Web服务的一个关键工具——Axis。Web服务是一种基于互联网的软件应用,允许不同系统之间的数据交换,通常使用XML作为数据格式,SOAP协议进行通信。...
### Axis开发WebService实例知识点解析 #### 一、Axis概述与安装配置 - **Apache Axis简介**:Apache Axis是Apache组织提供的一个开源项目,用于在Java环境中实现WebService技术规范。它支持SOAP协议,并提供了...
本文将深入探讨两种流行的Java Web服务框架——Axis2和CXF,并提供一个简单的实例来帮助理解它们的工作原理和使用方法。 首先,让我们了解一下`Axis2`。Axis2是Apache软件基金会开发的一个高性能、灵活且可扩展的...
【标题】:Web服务接口(WebService)学习二之(1)——Axis2服务器端开发总结 在本文中,我们将深入探讨使用Apache Axis2框架进行Web服务(WebService)服务器端开发的相关知识点。Apache Axis2是Java平台上一个高效...
java代码-使用java解决http请求.NET开发的webservice接口(AXIS)的源代码 ——学习参考资料:仅用于个人学习使用!
接下来,通过一个简单实例——SayHello服务,了解使用Axis开发Web Service的全流程。 **2.1 WSDL编写** - 在MyEclipse中创建一个Web Project,命名为`SayHello`。 - 通过`File -> New -> Other -> MyEclipse -> ...
在环境准备完毕后,开发者可以通过一个简单的例子——SayHello,来了解使用Axis2开发Web服务的基本流程。这个例子中,Web服务会接收一个字符串参数并返回一个问候语。 开发SayHello服务涉及以下步骤: 1. 在...
【Axis2从入门到精通——Webservice在Eclipse下开发教程】 Axis2是Apache软件基金会开发的一款先进的Web服务引擎,它是Axis1.x的全新设计版本,旨在提供更高效、更灵活的Web服务开发体验。本教程将逐步指导你如何...
- **文件选择**:提供两种主要的安装包——`axis2-1.4.1-bin.zip`和`axis2-1.4.1-war.zip`。前者包含了所有必要的JAR文件;后者则用于在Web容器中部署Web服务。 - **安装步骤**:解压缩`.war`文件至Tomcat或其他Web...
### 使用AXIS开发WebService教程——如何发布自己的WebService #### 一、开发环境搭建与配置 在开始本教程之前,我们先来了解一下作者所使用的开发环境: - **JDK版本**:1.4.2 - **IDE**:MyEclipse 6.0 - **Web...
4. **配置Axis1服务器**: 在Axis1环境中,有两个重要的配置文件——`server-config.wsdd`和`deploy.wsdd`。`server-config.wsdd`用于配置全局服务参数,而`deploy.wsdd`用于部署特定的服务。这两个文件位于Axis1的...