ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:35.02KB ,
资源ID:1058823      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-1058823.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(axis学习小记推荐.doc)为本站会员(无敌)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

axis学习小记推荐.doc

1、今天在老师的要求下,看了些 Axis 相关的东西,过了就得拿来做东西了。现在只懂皮毛,在龙哥的文章指导下,略知一二(以下-部分是摘自龙哥的 BLOG):一、Axis 简介1. 什么是 SOAPSOAP 是一个基于 XML 的用于应用程序之间通信数据编码的传输协议。最初由微软和 Userland Software 提出,随着不断地完善和改进,SOAP 很快被业界广泛应用,目前完全发布版本是 1.1。在其发展过程中,W3C XML 标准工作小组积极促成 SOAP 成为一个真正的开放标准。在写作此文档之时,SOAP1.2 草案已经发布,1.2 对 1.1 中相对混乱的部分做了改进。SOAP 被广泛作

2、为新一代跨平台、跨语言分布计算 Web Services 的重要部分。2. 什么是 AxisAxis 是 Apache 组织推出的 SOAP 引擎,Axis 项目是 Apache 组织著名的 SOAP 项目的后继项目,目前最新版本是采用 Java 开发的 1.1 版本,C+的版本正在开发之中。Axis v1.1 软件包可以从 http:/ws.apache.org/axis/dist/1_1/下载得到。但是 Axis 不仅仅是一个 SOAP 引擎,它还包括:一个独立运行的 SOAP 服务器一个 servlet 引擎的插件,这个 servlet 引擎可以是 Tomcat对 WSDL 的扩展支持一

3、个将 WSDL 的描述生成 JAVA 类的工具一些示例代码还有一个监控 TCP/IP 包的工具 二、Axis 的安装应用 Axis 开发 Web Services,你需要安装如下软件:1.JDK1.4.22.一个支持 Servlet 的服务器引擎,比如广为人知的 Tomcat。当安装好 Tomcat 之后,只需将下载的 Axis 软件包解压缩,将其中的“webapps”目录下的“axis”目录整个拷贝到 Tomcat 安装目录下的“webapps”目录下即可。三、Axis 的配置Axis 基于 Java 开发,可以部署于多种操作系统,使用前需要配置一系列的系统变量,在此假定你已经在本机上装好了

4、 Tomcat 4.0 以上的版本,需要配置的系统变量如下表所示:CATALINA_HOMEC:Tomcat_4_1(此处应为 Tomcat 的安装位置,注意路径名中不要有空格)AXIS_HOME%CATALINA_HOME%webappsaxisAXIS_LIB%AXIS_HOME%libAXISCLASSPATH%AXIS_LIB%axis.jar;%AXIS_LIB%commons-discovery.jar; %AXIS_LIB%commons-logging.jar;%AXIS_LIB%jaxrpc.jar; %AXIS_LIB%saaj.jar;%AXIS_LIB%log4j-1.

5、2.8.jar; %AXIS_LIB%xml-apis.jar;%AXIS_LIB%xercesImpl.jarCLASSPATH 中加入:%AXIS_LIB%axis.jar;%AXIS_LIB%commons-discovery.jar; %AXIS_LIB%commons-logging.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 的测

6、试安装配置完毕后,应测试一下是否 Axis 可以正确运行了。启动 Tomcat 服务器,在浏览器中访问http:/localhost:8080/axis/happyaxis.jsp,如果页面显示有错误,则需要回头检查一下相关配置是否正确,如果浏览页面能正确显示出系统组件、属性等参数配置信息,则表示安装成功。现在可以开始开发你的 Web Services 应用了。五、服务的发布Axis 提供了两种服务发布方式,一种是即时发布(Instant Deployment),一种是定制发布(Custom Deployment)。A。即时发布(jws)用 jws 来创建 web services 是一个最简

7、单的方法,下面借助一个简单的例子说明一下具体过程1.编写一个 java 文件,经 javac 编译后没有错误,把该文件另存为.jws 文件。例如合 HelloWorld.jws:public class HelloWorldpublic String sayHello(String name)return “Hello“+name;然后把它放到对应的 webapps/axis 下.2。启动服务器,axis 会自动把它变成一个服务,生成相关的 wsdl 文档,并把jws 用 java 编译成 class 文件放到 axisWEB-INFjwsClasses 目录下。打开 IE,输入:http:/

8、127.0.0.1:7001/axis/HelloWorld.jws,即可发现有一个 wsdl 和该服务。3。编写一应用程序客户端来访问该 web services.例如:import javax.xml.rpc.ParameterMode;import org.apache.axis.client.Call;import org.apache.axis.client.Service;import org.apache.axis.encoding.XMLType;public class ServiceClientpublic static void main(String args) thr

9、ows ExceptionString endpoint=“http:/127.0.0.1:7001/axis/HelloWorld.jws“;String name=“gaolong1“;Service service=new Service();Call call=(Call) service.createCall();call.setUsername(“glong1“);call.setPassword(“131001“);/这是服务所用的安全的认证call.setTargetEndpointAddress(new .URL(endpoint);call.setOperationName

10、(“sayHello“);call.addParameter(“name“,XMLType.XSD_STRING,ParameterMode.IN);call.setReturnType(XMLType.XSD_STRING);/XMLType.XSD_STRING);String ret=(String)call.invoke(new Object name);System.out.println(ret);运行后,会显示其调用信息。在使用的过程中,要用到 tcpmontor 来监听截取 soap 消息:用:java org.apache.axis.utils.tcpmon 7003 loc

11、alhost 7001 (其中前者是截听得代理端口,中间是目标地址,后者是所用的目标端口)通过 tcpmontor 来监听 tcp:7001 得到的 soap 消息如下:请求消息:gaolong1回应消息:Hellogaolong1B。定制发布(WSDD)用 wsdd(服务部署描述语言),主要是编写 java 文件和编写 wsdd 文件。1。编写 java 文件,最好是定义在某一个包下,否则便以后直接放到WEB-INFclasses 下,有时会出错,原因是在用 deploy.wsdd 部署时映射不对。然后直接包对应的包放到WEB-INFclasses 中。HelloWorldG.java 文件

12、:package test.gaolong;public class HelloWorldGpublic String sayHelloG(String name)return “HelloG “+name;2。编写 wsdd 文件(好像不支持中文注释),根据 wsdd 文件的规范编写相关文档。例如:(deploy.wsdd)3。部署 wsdd 文件:打开命令口,切换到 deploy.wsdd 目录下,运行 java org.apache.axis.client.AdminClient 即可完成部署。这儿可能出错,正确的显示:D:beauser_projectsdomainsmydomaina

13、pplicationsaxisWEB-INFclassesjava org.apache.axis.client.AdminClient -p 7001 deploy.wsddProcessing file deploy.wsddDone processing当在 wsdl 中使用 deploy.wsdd 来部署时,对于服务器是要打开的,而且当服务器的端口不是 8080 时,采用要求 java org.apache.axis.client.AdminClient -p deploy.wsdd 来指定并进行服务部署。4。打开 server-config.wsdd 会发现增加了语句描述:其实直接到

14、该文件中增加该内容,不必用org.apache.axis.client.AdminClient 来部署描述。打开 IE,可以在 http:/127.0.0.1:7001/axis/servlet/AxisServlet 看到该服务部署到服务列表上。5。编写测试 application 客户端,其代码如下:import javax.xml.rpc.ParameterMode;import org.apache.axis.client.Call;import org.apache.axis.client.Service;import org.apache.axis.encoding.XMLType

15、;import javax.xml.namespace.QName;public class ServiceClientpublic static void main(String args) throws ExceptionString endpoint=“http:/127.0.0.1:7003/axis/services/HelloWorldG“;String name=“gaong1“;Service service=new Service();Call call=(Call) service.createCall();/回调服务call.setUsername(“gaolong1“)

16、;call.setPassword(“8001“);/用户认证call.setTargetEndpointAddress(new .URL(endpoint);/ call.setOperationName(“sayHelloG“);call.setOperationName(new QName(“http:/gaolong.test“, “sayHelloG“);/设置指定的命名空间(由服务器短的主类包名决定),根据wsdl 文件来决定,sayHelloG 为方法/名call.addParameter(“name“,XMLType.XSD_STRING,ParameterMode.IN);call.setReturnType(XMLType.XSD_STRING);/XMLType.XSD_STRING);String ret=(String)call.invoke(new Object name);System.out.println(ret);/要设置权限,否则出现 unauthoried 异常运行之后有关的显示。6。通过 tcpmonitor 来监听的 soap 消息如下:请求 soap:gaolong1回应 soap:HelloG gaolong1

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报