Axis部署开发webservice (全)
AXIS1.4安装和应用
关键字: axis
/**
* 安装axis
*/
下载:http://ws.apache.org/axis/ 1.4
解压后把webapp/axis目录,放置于%TOMCAT_HOME%\webapps\下。
注意需要另外的lib: activation-1.1.jar, mail-1.4.jar, xercesImpl-2.8.1.jar, xml-apis-2.0.2.jar, xmlsec-1.3.0.jar
设置环境变量:
AXIS_HOME=E:\download\opensource\axis-1_4
AXIS_LIB=%AXIS_HOME%\lib
AXISCLASSPATH=%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\wsdl4j-1.5.1.jar;%AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar
CLASSPATH=%AXISCLASSPATH%;...
启动tomcat后,访问http://localhost:8080/axis/
查看validator确认安装是否成功。
//部署
java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd
//反部署
java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient undeploy.wsdd
//测试方法
http://localhost:8080/axis/services/LogTestService?method=testMethod&name=liwanchun
//根据wsdl生成JAVA客户端
Java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java http://localhost:8080/axis/services/LogTestService?wsdl
//对于用户的认证
使用BasicHandler实现
//示例:以短信服务为例
/**
* Message.java 2007-12-31 liwanchun Exp $
* Copyright(c) 2000-2007 HC360.COM, All Rights Reserved.
*/
package com.hc360.axis;
/**
* @author: Liwanchun
*/
public class Message {
private String from;
private String to;
private String content;
private int priority;
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public int getPriority() {
return priority;
}
public void setPriority(int priority) {
this.priority = priority;
}
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
}
/**
* response.java 2007-12-31 liwanchun Exp $
* Copyright(c) 2000-2007 HC360.COM, All Rights Reserved.
*/
package com.hc360.axis;
/**
* @author: Liwanchun
*/
public class Response {
private int code;
//发送结果代码
private String errorText;
private Message message;
//发送的原始信息
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getErrorText() {
return errorText;
}
public void setErrorText(String errorText) {
this.errorText = errorText;
}
public Message getMessage() {
return message;
}
public void setMessage(Message message) {
this.message = message;
}
}
/**
* Sms.java 2007-12-31 liwanchun Exp $
* Copyright(c) 2000-2007 HC360.COM, All Rights Reserved.
*/
package com.hc360.axis;
/**
* @author: Liwanchun
*/
public class Sms {
/**
* 短信息发送Web服务接口
*/
public Response send(Message msg) throws Exception{
System.out.println("CONTENT:"+msg.getContent());
Response res = new Response();
res.setMessage(msg);
res.setCode(0);
res.setErrorText("ok");
return res;
}
}
/**
* 发布Sms
* 1、编写deploy.wsdd
* 2、发布Sms
*/
deploy.wsdd
----------------------------------------------------------------------------------
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="Sms" provider="java:RPC">
<parameter name="className" value="com.hc360.axis.Sms"/>
<parameter name="allowedMethods" value="send"/>
<beanMapping qname="myNS:Message" xmlns:myNS="urn:BeanService" languageSpecificType="java:com.hc360.axis.Message"/>
<beanMapping qname="myNS:Response" xmlns:myNS="urn:BeanService" languageSpecificType="java:com.hc360.axis.Response"/>
</service>
</deployment>
发布Sms:
----------------------------------------------------------------------------------
java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd
/**
* 根据wsdl生成JAVA客户端
*/
Java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java http://localhost:8080/axis/services/LogTestService?wsdl
该命令执行的结果是在当前所在目录下产生一个子目录BeanService和localhost目录,
------------------------------------------------------------------------------------
-- BeanService
| Message.java
| Response.java
-- localhost\axis\services\Sms
| Sms.java 定义了Web服务接口,此例中只有一个send方法。
| SmsService.java 定义了用于获取Web服务接口的方法。
| SmsServiceLocator.java 接口SmsService的具体实现
| SmsSoapBindingStub.java Web服务客户端桩,通过该类与服务器交互。
这四个JAVA类帮我们处理了大部分的逻辑,我们需要的仅仅是把这些类加到我们的项目然后创建一个我们自己的类来调用它们即可。为此我们新加一个类Main.java,为了方便,让这个类与刚产生的四个类都在同一个包下。内容如下:
/**
* Main.java 2007-12-31 liwanchun Exp $
* Copyright(c) 2000-2007 HC360.COM, All Rights Reserved.
*/
package localhost.axis.services.Sms;
import BeanService.Message;
import BeanService.Response;
/**
* @author: Liwanchun
*/
public class Main {
/**
* @param
* @return
* @throws
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
SmsService service = new SmsServiceLocator();
Sms sms = service.getSms();
Message msg = new Message();
msg.setContent("this is a test!");
msg.setFrom("hc360.com");
msg.setTo("yoobaba.com");
msg.setPriority(1);
Response resp = sms.send(msg);
Message msgRec = resp.getMessage();
System.out.println("From:" + msgRec.getFrom() + " to " +
msgRec.getTo() + ", content: " + msgRec.getContent() +
", priority: " + msgRec.getPriority() + ", code: " +
resp.getCode() + ", error code : " + resp.getErrorText());
}catch(Exception e){}
}
}
分享到:
相关推荐
标题“Java-tomcat-axis2开发webservice返回json数据”涉及的是使用Java、Tomcat服务器以及Axis2框架来创建Web服务,并返回JSON格式的数据。这是一个常见的技术组合,用于构建RESTful API或者提供服务化接口。下面...
标题 "Axis2 开发 WebService" 指的是使用 Apache Axis2 框架在 Eclipse 集成开发环境中创建和部署 WebService 的过程。Apache Axis2 是一个强大的 WebService 引擎,它提供了高性能、灵活且可扩展的架构,支持多种...
总结来说,Axis2是Apache软件基金会的一个开源项目,提供了一种高效且灵活的方式来开发和部署Web服务。开发者可以利用其强大的功能来构建复杂的分布式应用程序,实现跨平台的数据交换。理解Web服务的基本原理,熟练...
1. **创建WebService**:在Axis2中,可以通过编写一个简单的Java类并暴露其方法作为Web服务接口。这个类通常会遵循SOAP协议,定义服务操作。例如,你可以创建一个名为`HelloWorldService`的类,包含一个`sayHello`...
Apache Axis2是Apache软件基金会开发的一个Web服务引擎,它提供了高效且灵活的Web服务解决方案。 **Web服务**是一种在互联网上不同系统间交换数据的方式,它允许应用程序之间通过标准协议进行通信。Web服务通常使用...
【标题】:“利用Axis2实现WebService开发与部署” 【描述】:“利用Axis2实现WebService开发与部署-3中方法进行开发” 【标签】:“WebService” 本文将详细讲解如何使用Apache Axis2框架来开发和部署Web ...
7. **部署Web服务**:利用SpringBoot的内嵌HTTP服务器,我们可以将Axis部署在SpringBoot应用中。这通常涉及到配置一个Servlet来处理SOAP请求。 8. **测试Web服务**:使用SOAP客户端工具,如SoapUI,来测试我们的Web...
### Axis2 开发WebService心得 在进行WebService的开发过程中,特别是在使用Axis2框架时,往往会遇到各种挑战与难题。本文将结合实践经验,分享在使用Axis2进行WebService开发时的一些心得和解决方案,希望能够帮助...
Axis2_WebService_开发指南详细介绍了如何使用Axis2开发WebService。 首先,在进行Axis2的准备工作时,需要下载Axis2的相关jar包,这些依赖包可以在Axis2的官方网站上找到。截至文档提供的信息,最新的版本是1.5.4...
Axis1.4是Apache软件基金会提供的一个开源工具,专门用于开发和部署Web服务。本教程将详细讲解如何使用Axis1.4进行Web服务的开发,包括创建服务端和客户端。 首先,我们需要了解Web服务的基本概念。Web服务是通过...
Axis1.4是Apache软件基金会开发的一个开源Java框架,用于创建和部署Web服务。这个框架在Web服务领域中扮演着重要角色,特别是在早期的Web服务实现中。标题和描述提到的知识点主要集中在如何使用Axis1.4来部署Web服务...
标题中的“axis1.4开发webservice”指的是使用Apache Axis1.4框架创建Web服务的过程。Apache Axis是Java中广泛使用的开源工具,用于实现SOAP(简单对象访问协议)Web服务。Axis1.4是该工具的一个版本,它支持Java-to...
Axis2提供了强大的工具集来简化WebService的开发过程。 #### 二、搭建Axis2 WebService环境 - **准备工作**:首先需要下载Axis2的相关资源。这里以`axis2-1.6.1-war.zip`为例。 - **下载地址**:[Apache官方网站]...
3. **开发环境配置**: 开发 Axis WebService 需要 Eclipse、Java JDK 1.6 或更高版本,以及 Axis 的相关库(axis-bin.zip)。这些库通常包含了 Axis 运行所需的 JAR 文件,用于编译和运行 Web 服务。 4. **创建 Web...
这需要将服务类和相关的配置文件打包成一个Axis2模块(.aar文件),然后部署到Axis2服务器上。 5. **测试和调用**:一旦服务被部署,就可以通过Spring的`WebServiceTemplate`或`WebServiceProxyFactoryBean`来测试...