`

AXIS1.4安装和应用

 
阅读更多

/**
* 安装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){}

}

}

分享到:
评论

相关推荐

    axis1.4的学习总结以及相应部署所有用到的jar包

    在这里是本人经过对网络资源的学习总结出来的应用axis1.4进行webservice开发的总结,里面有简单的demo以及所有工程用到的jar包,以及如何进行webservice的部署与发布 (注:这里用到的webservice是基于简单的单值...

    axis1.4调试全过程

    对方的webservice服务端使用axis1.4开发,参数有String[]类型,试了cxf、xfire等都无法生成客户端,只能使用axis4. 解压后lib包已经全了。修改xx.bat里webservice地址一项,执行xx.bat生成客户端文件。 生成之后,...

    wsdl2java源码-axis14_on_wildfly_swarm:该项目是我使用WildflySwarm捆绑ApacheAxis1.4S

    1.4 SOAP RPC servlet 应用程序创建 uber-jar。 问题复制 要重现该问题,请从此目录运行mvn package ,然后尝试在target目录中运行创建的 jar 文件。 包示例 以下是从我的 IntelliJ IDEA IDE 为该项目执行mvn ...

    axis学习资料汇总

    axis学习资料汇总: Axis实例与分析详解; Axis学习笔记.pdf; Tomcat5.0.28下AXIS完全安装手册.doc; Axis1.4 开发指南_V1.0.pdf; AXIS入门及应用.rar; Axis开发Web+Services.doc 等等

    Webservice之Axis高级编程

    1.1 AXIS第一课:最简单的发布AXIS的Web ...1.4 AXIS第四课:AXIS高级应用,建立安全的AXIS服务 1.5 AXIS第五课:AXIS高级应用,在AXIS服务间传递JavaBean及其安全解决 1.6 使用TCPMonitor监控WebService SOAP消息

    axis-bin-1_4.tar.gz

    事实上Apache Axis在了1.0版后,其发行版本还包括了完整的J2EE服务器插件, WSDL支持和生成,TCP/IP监视器等组件,从这个意义上来说Apahce Axis已不仅仅是个SOAP框架了,它包含了除了UDDI外对整个Web Service协议栈...

    activemq的windowns编译库、centos7编译库和mac编译库(含头文件和库文件)

    ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。 特点: 支持来自Java,C,C ++,C#,Ruby,Perl,...

    ActiveMQ消息服务器.rar

    ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。 ActiveMQ的特点: 支持来自Java,C,C ++,C#,Ruby,...

    apache-activemq-5.11.2

    ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位. ⒈ 多种语言和协议编写客户端。语言: Java,C,C++,C#,...

    应用基础手册 3 ——SIMOTION 运动控制器基础应用

    1.1 应用背景 ..........................................................................................................................1 1.2 SIMOTION 的系统组成及功能....................................

    MULE IN ACTION

    1.基于J2EE1.4的企业消息总线(ESB)和消息代理(broker). 2.可插入的连接性:比如Jms,jdbc,tcp,udp,multicast,http,servlet,smtp,pop3, file,xmpp等. 3.支持任何传输之上的异步,同步和请求响应事件处理机制. 4.支持...

    Mule是一个企业服务总线(ESB)消息框架

    1.基于J2EE1.4的企业消息总线(ESB)和消息代理(broker). 2.可插入的连接性:比如Jms,jdbc,tcp,udp,multicast,http,servlet,smtp,pop3, file,xmpp等. 3.支持任何传输之上的异步,同步和请求响应事件处理机制. 4.支持...

    webservice客户端插件1.4.1.rar

    myeclipse反向生成webservice客户端插件,将文件夹解压到\MyEclipse 8.5\dropins\目录下重启Mycelipse,在Myeclipse中选择import Axis2 Code Generator项目即可反向生成webservice客户端代码1.4版本,可以应用于比较...

    HTML开发王

    17.1 安装和设置网络应用程序的运行环境 17.1.1 安装iis 17.1.2 安装pws 17.1.3 通过服务器请求网页 17.2 web服务器根目录和虚拟目录 17.2.1 web服务器根目录 17.2.2 虚拟目录 17.2.3 启用默认文件 17.3 巩固与自测 ...

    从Java走向Java+EE+.rar

    3.2 Tomcat的安装和使用 20 3.3 小结 25 第4章 在Java EE中使用XML 26 4.1 什么是XML 26 4.1.1 理解XML 26 4.1.2 XML的语法 27 4.1.3 XML命名空间 31 4.2 XML能用来干什么 32 4.3 用DTD验证XML文档...

    ActiveMQ消息服务器-其他

    ActiveMQ是一个完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。 主要特点: 1、多种语言和协议编写客户端。语言:Java,C...

    安防天下智能网络视频监控技术详解与实践part2

    1.4 视频监控的发展方向 10 第2章 模拟视频监控系统 13 2.1 模拟监控系统的构成 14 2.2 视频采集设备 14 2.2.1 摄像机相关技术 15 .2.2.2 镜头相关介绍 19 2.2.3 防护罩 23 2.2.4 云台及解码器 23 ...

    安防天下智能网络视频监控技术详解与实践.part3

    1.4 视频监控的发展方向 10 第2章 模拟视频监控系统 13 2.1 模拟监控系统的构成 14 2.2 视频采集设备 14 2.2.1 摄像机相关技术 15 .2.2.2 镜头相关介绍 19 2.2.3 防护罩 23 2.2.4 云台及解码器 23 2.2.5 ...

Global site tag (gtag.js) - Google Analytics