使用axis2 部署webservice服务
来源:互联网 发布:美丽折淘客软件下载 编辑:程序博客网 时间:2024/06/05 05:26
部署webservice服务
在网上找了下,大概有三种方法
1 有在tomcat下部署axis2 包,再将class文件打包成arr包部署
2 在myeclipse中下载axis2插件直接转类文件为wsdl文件的(没有配置成功)
3 在web中引用axis2 jar包,并做相关配置.
方式2 没有调试成功,
方式1 不知道什么情况需要这种应用,发布和更新都不太方便.
在下面就介绍下方式3
参考帖子http://jingyan.baidu.com/article/a3761b2bbe092c1576f9aa29.html
本程序在myeclipse6.5 ,tomcat6,jdk1.6下调试成功
1 在axis2的官网下载axis2.war包 http://axis.apache.org/axis2/java/core/
2 新建一个web应用工程名Axis2Test。
3 解压axis2.war文件,将conf、lib、modules复制到工程中的WEB-INF目录中,axis2-web建议也放到工程WebRoot目录下,因为如果调用webservice失败,没有该文件,系统会报错
加入文件后目录结构如下
4 建立HelloServcieNew.java文件,内容如下:
package cn.lr.service;public class HelloServiceNew { public String sayHelloNew(){ return "hello,lr"; } public String sayHelloToPersonNew(String name){ if(name==null){ name = "nobody"; } return "hello,"+name; } public void updateData(String data){ System.out.println(data+"更新说明"); } }
5 建立service文件,并按照目录结构建立services.xml文件
目录结构见上图
<?xml version="1.0" encoding="UTF-8"?><service name="HelloService"> <description> Web Service例子 </description> <parameter name="ServiceClass"> cn.lr.service.HelloServiceNew </parameter> <messageReceivers> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" /> </messageReceivers></service>对应关系如图
6 修改web.xml文件
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>AxisServlet</servlet-name> <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> </web-app>
增加红色线部分
7 配置后部署tomcat启动服务 访问http://localhost:8080/Axis2Test/services/HelloService?wsdl 提示如下
8 访问测试
新建工程AxisClient,创建AxisClient类
public class AxisClient {/** * @param args * @throws AxisFault */public static void main(String[] args) throws AxisFault {// TODO Auto-generated method stubRPCServiceClient serviceClient = new RPCServiceClient(); Options options = serviceClient.getOptions(); // 指定调用WebService的URL EndpointReference targetEPR = new EndpointReference( "http://localhost:8080/Axis2Test/services/HelloService"); options.setTo(targetEPR); // 指定sayHelloToPerson方法的参数值 Object[] opAddEntryArgs = new Object[] {"say hello world"}; // 指定sayHelloToPerson方法返回值的数据类型的Class对象 Class[] classes = new Class[] {String.class}; // 指定要调用的sayHelloToPerson方法及WSDL文件的命名空间 QName opAddEntry = new QName("http://service.lr.cn", "sayHelloToPersonNew"); // 调用sayHelloToPerson方法并输出该方法的返回值 System.out.println(serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]); }}
对应关系见下图
9 运行AxisClient文件,结果如下:
- 使用axis2 部署webservice服务
- 使用axis2配置webservice服务
- 使用axis2配置webservice服务
- webservice 开发 axis2 简单部署服务 gSoap 客户端通信
- AXIS2部署WebService实战
- 部署axis2 webservice
- 使用Axis2开发Web服务 --- 环境部署
- axis2 webService服务搭建
- Axis2发布WebService服务
- WebService Axis2快速部署应用
- 使用axis2创建webservice
- axis2客户端调用免费的webservice服务的实例之三axis2使用RPC方式调用网上免费WebService
- axis2实现Webservice独立部署简单案例
- 部署了axis2的webservice错误
- 通过 Axis2 开发 Web 服务,第 1 部分: 通过 Axis2 运行时部署和使用简单 Web 服务
- 通过 Axis2 开发 Web 服务,第 1 部分: 通过 Axis2 运行时部署和使用简单 Web 服务
- 通过 Axis2 开发 Web 服务,第 1 部分: 通过 Axis2 运行时部署和使用简单 Web 服务
- 通过 Axis2 开发 Web 服务,第 1 部分: 通过 Axis2 运行时部署和使用简单 Web 服务
- Jvm工作原理学习笔记
- Android MimeType的用法和几种类型
- C/C++中static,const,inline三种关键字详细总结
- Java 最新支付版本 demo 微信支付
- context.progress()的作用
- 使用axis2 部署webservice服务
- Spring prototype bean 怎么了
- CUDA Review
- C#之浅析面向对象编程思想(一)
- ACM #1015 KMP算法
- 【iOS开发-119】ipa打包、单元测试test、本地通知UILocalNotification
- Same Tree
- 为什么openstack中的oslo模块总喜欢发生代码冲突? (by quqi99)
- 一个简单的C共享库的创建及python调用此库的方法