`

JDK tomcat Axis的安装及使用

阅读更多

一.简介 什么是SOAP?SOAP是一个应用程序间的基于XML的通信工具和规范.SOAP最初由MicroSoft和Userland公司开发,已经演化了好几个版本,当前的版本SOAP1.1正飞速发展.W3C的XML协议工作组正努力把它发展为一个真正的开发的标准.SOAP1.2草案已经发布,它能澄清 1.1版规范的容易混淆的地方.

什么是Axis?Axis总体上是一个SOAP引擎,但又不仅仅是个引擎,它还:1)是一个简单的独立的服务器2)是一个可插入到servlet引擎(如Tomcat)中的服务3)可扩展的支持WSDL4)能根据WSDL产生JAVA文件/类5)包括一些例子程序6)包括一个可以监控TCP/IP包的工具

Axis起源于IBM的SOAP4J,是Apache SOAP的第三代产品,相对于以前的版本,它有如下特性:1)快速,它使用了基于事件的SAX解析机制.2)灵活,用户可以灵活定制扩展.3)稳定,接口将会变动很小.4)基于组件开发.5)支持WSDL1.1

二.准备应用Axis开发Web Services,你需要安装如下软件: 1.jdk1.5 2.安装Tomcat5.0.28,这是当前稳定版本.Tomcat运行在80端口.访问http://localhost/8080 检查Tomcat是否安装成功. 3.下载AXIS: 官方站点:http://xml.apache.org/axis/index.html 下载软件:axis-bin-1_2_1.tar.gz 4.下载相关包: a.mail.jar 下载地址:http://java.sun.com/products/javamail b.activation.jar 下载地址:http://java.sun.com/products/javabeans/glasgow/jaf.html c.xerces.jar 下载地址:http://xml.apache.org/xerces-j/index.html d.xmlsec-1.2.1.jar 下载地址:http://xml.apache.org/security/

三.安装 1.将jdk1.5.0_04安装在D:\jdk1.5.0_04下(当然安装路径可任意选)好后,环境变量配置如下: JAVA_HOME=D:\jdk1.5.0_04 CLASSPATH=.;D:\jdk1.5.0_04\jre\lib\rt.jar;D:\jdk1.5.0_04\jre\lib\tools.jar Path=D:\jdk1.5.0_04\bin 2.tomcat-5.0.28安装在D:\tomcat-5.0.28下(安装路径可任选)好后,环境变量配置如下: CATALINA_BASE=D:\tomcat-5.0.28 CATALINA_HOME=D:\tomcat-5.0.28 3.axis的安装 a.将下载的Axis软件包解压缩,将其中的“webapps”目录下的“axis”目录整个拷贝到Tomcat安装目录下的“webapps”目录下。 b.将mail.jar、activation.jar、xerces.jar、xmlsec-1.2.1.jar四个包,全部拷到D:\tomcat-5.0.28\webapps\axis\WEB-INF\lib下 c.环境变量配置 AXIS_HOME=D:\tomcat-5.0.28

AXIS_LIB=%AXIS_HOME%\WEB-INF\lib AXISCLASSPATH=%AXIS_LIB%\activation.jar;%AXIS_LIB%\axis.jar;%AXIS_LIB%\axis-ant.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%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar;%AXIS_LIB%\mail.jar;AXIS_LIB%\wsdl4j-1.5.1.jar;%AXIS_LIB%\xerces.jar;%AXIS_LIB%\xmlsec-1.2.1.jar

CLASSPATH=%AXIS_HOME%\WEB-INF\lib AXISCLASSPATH=%AXIS_LIB%\activation.jar;%AXIS_LIB%\axis.jar;%AXIS_LIB%\axis-ant.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_L

IB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar;%AXIS_LIB%\mail.jar;AXIS_LIB%\wsdl4j-1.5.1.jar;%AXIS_LIB%\xerces.jar;%AXIS_LIB%\xmlsec-1.2.1.jar 这里有几点需要注意:中间不要有空格,包的名字可能有不同的版本,这时需要修改一下包名。

四.测试安装配置完毕后,应测试一下是否tomcat、Axis可以正确运行了。启动Tomcat服务器,在浏览器中访问http://localhost:8080/axis/happyaxis.jsp ,如果页面显示有错误,则需要回头检查一下相关配置是否正确,如果浏览页面能正确显示出系统组件、属性等参数配置信息,则表示安装成功。现在可以开始开发你的Web Services应用了。 

五、服务的发布 Axis提供了两种服务发布方式,一种是即时发布(Instant Deployment),一种是定制发布(Custom Deployment)。

1. 使用即时发布 Java Web Service(JWS)

  对即时发布的支持是Axis的特色之一,使用即时发布使用户只需有提供服务的Java类的源代码,即可将其迅速发布成Web服务。每当用户调用这类服务的时候,Axis会自动进行编译,即使服务器重启了也不必对其做任何处理,使用非常简单快捷。

  使用即时发布首先需要一个实现服务功能的Java源文件,将其扩展名改为.jws(Java Web Service的缩写),然后将该文件放到“……\webapps\axis”目录下即可。  在此给出一个HelloWorld程序,其源码如下:

HelloWorld.java

public class HelloWorld {   public String sayHello()   {     return "HELLO WORLD!";   } }

将其放到“……\webapps\axis”目录,通过访问http://localhost:8080/axis/HelloWorld.jws?wsdl 可以看到这个服务的WSDL描述文件,这说明HelloWorld服务被成功发布了。现在写个客户端程序访问一下:

TestClient.java

import org.apache.axis.client.Call; import org.apache.axis.client.Service;

import javax.xml.rpc.ParameterMode;

public class TestClient {

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

       String endpoint = "http://localhost :" +"8080"+ "/axis/HelloWorld.jws";//指明服务所在位置

      Service  service = new Service();  //创建一个Service实例,注意是必须的!

      Call     call    = (Call) service.createCall();//创建Call实例,也是必须的!

      call.setTargetEndpointAddress( new java.net.URL(endpoint) );//为Call设置服务的位置

      call.setOperationName( "sayHello" );/注意方法名与HelloWorld.java中一样!!

      String res = (String) call.invoke( new Object[] {} );//返回String,没有传入参数

       System.out.println( res );   

}

}

下面我们介绍第二种发布方式,这是常用的。

我们的第二种发布方式: 1、将HelloWorld.java编译成HelloWorld.class,放到%TOMCAT_HOME%\webapps\axis\WEB-INF\classes 下

2、在%TOMCAT_HOME%\webapps\axis\WEB-INF下新建deploy.wsdd文件,即SOAP服务发布描述文件

     deploy.wsdd

<deployment xmlns="http://xml.apache.org/axis/wsdd/ " xmlns:java="http://xml.apache.org/axis/wsdd/providers/java ">     <service name="HelloWorld" provider="java:RPC">         <parameter name="className" value="HelloWorld"/>         <parameter name="allowedMethods" value="sayHello"/>     </service> </deployment>

在DOS下转换目录到%TOMCAT_HOME%\webapps\axis\WEB-INF,命令: java org.apache.axis.client.AdminClient deploy.wsdd 后会出现

Processing file deploy.wsdd <Admin>Done processing</Admin>

这时你会发现目录下多了一个server-config.wsdd文件,这就是AXIS的配置文件,以后所有的服务发布描述都会在里面找到。(当然,你可以直接修改它,不用再写deploy.wsdd)然后打开浏览器http://localhost:8080/axis/services/HelloWorld?wsdl ,你就会看到你的服务已发布

同样用客户端程序访问一下:(注意和上边的差别!!)

HelloClient.java

import org.apache.axis.client.Call; import org.apache.axis.client.Service;

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

       String endpoint = "http://localhost :" +"8080"+ "/axis/services/HelloWorld";//注意!差别仅仅在这里!!

       Service  service = new Service();       Call     call    = (Call) service.createCall();        call.setTargetEndpointAddress( new java.net.URL(endpoint) );         call.setOperationName("sayHello"  );

         String res = (String) call.invoke( new Object[] {} );

                         System.out.println( res );    } }

五.总结

  Web Services是未来网络应用的发展方向,SOAP和WSDL是Web Services的核心协议,Axis给出了一个很好的SOAP实现,它使得开发Web Services应用变得轻松而有趣。

 

分享到:
评论

相关推荐

    jdk tomcat axis 安装配置 web service 发布

    本文详细介绍了jdk tomcat axis 的安装配置,并发布了一个简单的web 服务

    AXIS2远程调用WebService示例(Eclipse+AXIS2)工具和所用包.rar

    AXIS2远程调用WebService示例(Eclipse+AXIS2)工具和所用包 包括eclipse tomcat axis2 java直接到官网下载jre和jdk1.8版本即可

    axis-kickstart.rar_Home Home_axis_axis 1.4_axis tomcat_org.apach

    本文中使用的是JDK 5.0(源代码是1.4 的)。Tomcat 是5.0.28。 下载AXIS 1.4,地址http://ws.apache.org/ 安装AXIS 解压开axis1_ 4.zip ,将axis1_ 4/webapps/axis 拷贝到 $TOMCAT_HOME/webapps/ 下启动tomcat,打开...

    用Java 开发 WebService Axis简单实例

    在开发之前, 先了解一下AXIS,axis目前出现的2版本以其灵活性,快速开发工具的集成高于xfire而使用者居其上.用Eclipse开发,一开始就会想到xfire,它...本人的开发环境eclipse3.2 ,tomcat5.0.28 ,jdk1.4 axis_1.4目前最新版

    axis1.4 部署解析webservie

    1.TOMCAT+AXIS的安装配置 首先机子上应该安装JDK1.5版本以上(带有XML解析包)。我这里是1.5.0.6 从APACHE的官方网站(www.apache.org)下载TOMCAT安装软件。下载版本要在4.0以上。这里用的是5.0版本。安装完后,...

    axis2 1.7.4war及已经集成了axis2的web工程

    包含了 axis2 1.7.4版本的war包 也可以自行去 apache官网下载 ,另外还包含一个已经集成了axis2的web工程源码 使用的jdk1.6开发,可以直接把web工程导入到myeclipse,部署到tomcat可运行后,浏览器输入 ...

    应用Axis开发Web Services

    一、Axis的安装 &lt;br/&gt;应用Axis开发Web Services,你需要安装如下软件: 1.JDK1.4.2或以上 2.http://ws.apache.org/axis/dist/1_1/下载得到 3.一个支持Servlet的服务器引擎,比如广为人知的Tomcat。...

    WebService之Axis2实例

    完整的Axis2实例,内含代码demo,编写工具Eclipse,jdk1.7 tomcat7.0

    java期末大作业课程设计基于springboot+axis的医院挂号预约系统源码+数据库.zip

    服务端开发环境:jdk8,mysql8.0,tomcat9.0,IDEA2021 客户端:基于Springboot来整合axis客户端 客户端用springboot实现,服务端用webService+axis+mybatis实现 java期末大作业课程设计基于springboot的医院挂号...

    axis-src-1_4.zip

    从 axis-src-1_4\axis-1_4\lib 中拷贝 activation.jar 到tomcat\common\lib 下 从 jdk_home(例如:"C:\Program Files\Java\jdk1.5.0")\lib下拷贝 tools.jar 到 tomcat\common\lib下

    axis2 1.7.4war包及已经集成了axis2的web工程

    包含了 axis2 1.7.4版本的war包 也可以自行去 apache官网下载 ,另外还包含一个已经集成了axis2的web工程源码 使用的jdk1.6开发,可以直接把web工程导入到myeclipse,部署到tomcat可运行后,浏览器输入 ...

    web service示例[axis]

    网上找了N久没找到一个满意的axis的demo,于是各种整合自己写了个,myeclipse8.6+tomcat6+jdk1.6+axis1.4,虽然不是很完美[server-config.wsdd文件还是需要手动执行一个bat生成],但总体来说还算凑合吧,所有的代码...

    axis+webservice教程.doc

    JDK 1.4.2 + Myeclipse 6.0(实在经不起诱惑,尝尝鲜) + Tomcat 5.0.28 + AXIS 1.4。 AXIS 1.4包可以在http://ws.apache.org/axis/找到。 假设所有的环境你已经搭好,并且AXIS包也已经下好了。OK, Here we go~

    webserveice 配置

    完整的webserveice 配置说明,应用于tomcat+eclispse+jdk1.5+axis

    axis1.4实现全过程,不少任何jar包

    之前我做WS时,找了一些网上的例子,但都没有跑成功,因为描述的不是很全面,还搂了一些包,我可是费了很大力气搞定的,所以拿出来给大家些借鉴,里面有2种发布服务的方式,想知道具体的就拿走看吧...

    可以跑的java webservice实例

    环境 J2SE SDK 1.6.0.23 + Tomcat 6.0 +AXIS 1.3 使用AXIS1.3开发webservice的实例,可以在Tomcat6.0下跑的。

    WebService安全代理(免费版)

    运行环境为 jdk1.5+tomcat5+ant+axis2v1.4.1+rampartv1.4 需要的lib如图lib-need-pic.jpg所示(可从官网下载这些lib) 1)webservice的安全需求 安全性 服务访问需要适当的访问控制:认证授权、机密性、完整性。...

    在java中发布webservice服务

    axis+tomcat创建webservice服务,步骤详细,手把手教你发布服务. 本例子开发工具:ecplise3.1+jdk1.4+tomcat5.0 不过在其它工具版本中也适用..

    项目整体框架

    最近在学习axis2和struts项目集成,整理了一个简易的项目框架,有...开发工具采用的是Eclipse Java EE IDE for Web Developers,应用服务器为tomcat7,oracle10g,jdk为1.6版本。 路径为:http://localhost:8080/rbweb/

    soapjava客户端源码-vba_client_demo:vba_client_demo

    soap java 客户端源码 ...身份认证服务平台自建接口master-https_单笔身份认证示例Axis相信服务端ssl证书tomcat版本,是框架和构建工具无依赖的纯eclipse工程。jdk版本兼容1.7及以上。 接口文档见 LTClie

Global site tag (gtag.js) - Google Analytics