加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

axis-安装

发布时间:2020-12-17 02:36:01 所属栏目:安全 来源:网络整理
导读:?转载自:http://yangyang.javaeye.com/blog/56519 ? 从今天开始我将学习 axis 的经验以笔记的形式共享给大家希望能对大家的工作有所帮助。 ???? 相信大家对 webservice 有一定的了解我在这里就不再复述 webservice 的一些基本概念。 axis1.3 是 soap1.2 协

?转载自:http://yangyang.javaeye.com/blog/56519

?

从今天开始我将学习axis的经验以笔记的形式共享给大家希望能对大家的工作有所帮助。

???? 相信大家对webservice有一定的了解我在这里就不再复述webservice的一些基本概念。

axis1.3soap1.2协议的一个实现框架。在工作中我们可以方便的通过axis进行webservice的开发。

废话少说,我们开始安装axis.

???? 我们可以从axis的官方网站上下载(http://ws.apache.org/axis/).解压缩axis-bin-1_3.zip。在lib中包含axis必须使用的jar包。docs中包含axis的文档,通常使用用户指南就可以解决大部分问题。samples中包含很多webservice的例子,以后会对这些例子进行进一步讲解。webapps文件夹中包含了一个axis web application你可以直接把他部署到tomcat中,然后在这个axis应用上发布你的webservice,发布成功后就可以调用了。build文件夹用来存放用ant编译的axis安装包的classes文件。

???? 第一个步骤:安装axis.( Axis 1.3,tomcat 5.028,jdk 1.42)

copy? axis-bin-1_3安装包下webapps文件夹中的axis目录到tomcatwebapps下发布你的axis应用。重新启动tomcat.访问http://localhost:8080/axis 。这时就会出现axis的欢迎画面.进入Validation链接以检查axis所使用的jar包是否全都存在。如果不存在就会显示一下画面:

我们可以根据链接下载axis缺少的jar文件,下载之后copytomcat/webapps/myaxis/WEB-INF/lib下即可。一般情况下还会有一些warning消息,里面列出的的选项不是必须存在的jar包。当所有必须的jar文件全部安装完毕,则会出现以下画面。

表示axis已经具备所有需要的jar文件!

?

?第二步骤:测试axis

? 在测试axis之前我们需要一些准备工作。我们首先要把axis用到的jar包添加到CLASSPATH环境变量中去。如下:

C:/tomcat5/webapps/axis/WEB-INF/lib/axis.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/jaxrpc.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/saaj.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/commons-discovery-0.2.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/commons-logging-1.0.4.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/wsdl4j-1.5.1.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/activation.jar;

C:/tomcat5/webapps/axis/WEB-INF/lib/mail.jar

注意路径是根据自己部属情况而定,上面的只是参考。

我们通过JWS (Java Web Service)文件的方式来发布一个webservice。首先在安装包的axis-bin-1_3/axis-1_3/samples/userguide/example2目录下找到Calculator .java文件,将其改名为Calculator .jws然后copytomcatwebapps/axis/下。发布这个webservice。这个webservice提供了两个功能即加减功能。

Webservice code:

public class Calculator {

? public int add(int i1,int i2)

? {

??? return i1 + i2;

? }

?

?

? public int subtract(int i1,int i2)

? {

??? return i1 - i2;

? }

}

Client code:

package samples.userguide.example2 ;

?

import org.apache.axis.client.Call;

import org.apache.axis.client.Service;

import org.apache.axis.encoding.XMLType;

import org.apache.axis.utils.Options;

?

import javax.xml.rpc.ParameterMode;

?

public class CalcClient

{

?? public static void main(String [] args) throws Exception {

?????? Options options = new Options(args);

??????

?????? String endpoint = "http://localhost:" + options.getPort() +

???????????????????????? "/axis/Calculator.jws";

??????

?????? args = options.getRemainingArgs();

??????

?????? if (args == null || args.length != 3) {

????? ?????System.err.println("Usage: CalcClient arg1 arg2");

?????????? return;

?????? }

??????

?????? String method = args[0];

?????? if (!(method.equals("add") || method.equals("subtract"))) {

?????????? System.err.println("Usage: CalcClient arg1 arg2");

?????????? return;

?????? }

??????

?????? Integer i1 = new Integer(args[1]);

?????? Integer i2 = new Integer(args[2]);

?

?????? Service? service = new Service();

?????? Call???? call??? = (Call) service.createCall();

?

?????? call.setTargetEndpointAddress( new java.net.URL(endpoint) );

?????? call.setOperationName( method );

?????? call.addParameter( "op1",XMLType.XSD_INT,ParameterMode.IN );

?????? call.addParameter( "op2",ParameterMode.IN );

?????? call.setReturnType( XMLType.XSD_INT );

?

?????? Integer ret = (Integer) call.invoke( new Object [] { i1,i2 });

??????

?????? System.out.println("Got result : " + ret);

?? }

}

?

下面我们来进行调用。首先进入客户端源代码所在位置,也可以将源代码所在目录添加到classpath
C:/Documents and Settings/y41yang/Desktop/software/axis-bin-1_3/axis-1_3;): 
      

然后输入java samples.userguide.example2.CalcClient -p8080 add 2 5
 这时如果结果为Got result : 7 则说明axis安装成功!如果失败了请检查classpath设置,
是否将所有用到jar文件加入classpath中。到这里axis就已经安装成功了!
后面我会进一步详细讲解有关通过wsdd部署webservice的方式。
由于时间比较仓促有很多的解释不清地方,如果有什么不明白可以给我回复,我会尽快答复!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读