- 浏览: 163753 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (193)
- Axis2 (10)
- Andriod (2)
- Java (22)
- Eclipse (2)
- 程序人生 (3)
- Windows (1)
- Sql Server 2005/2008 (7)
- 健身 (2)
- Log4j (1)
- Ant (1)
- Fatjar (2)
- 国际化 (1)
- Linux (3)
- JDBC (1)
- Oracle (2)
- 各种报错 (4)
- SWT (5)
- Tomcat (2)
- 车辆管理 (1)
- SVN (2)
- Spring (5)
- 域名服务器 (0)
- HaoWaYa (1)
- FTP (1)
- 集散中心 (1)
- 专业知识 (1)
- 面试准备 (19)
- 设计模式 (22)
- Junit (1)
- 软件下载 (3)
- 深入理解Java虚拟机 (3)
- 数据结构 (4)
- 雅思 托福 (0)
- UML (1)
- Maven (1)
- CV (1)
- ServiceMix (1)
- 电子书 (5)
- Struts1/2 (4)
- DOM W3C DHTML (3)
- Jawr (1)
- LoadRunner (1)
- Java反编译 (0)
- 英语学习 (0)
- 技术书籍 (1)
- Cygwin (0)
- ibatis (1)
- 数据库 (1)
- jQuery (0)
- s (2)
- 源代码项目 (5)
- JSRs (0)
- JCP (0)
- XML (2)
- Dojo (3)
- Effective Java (1)
- 一站到底 (3)
- JavaScript (6)
- DB2 (1)
- 刷机 (1)
- 字符 (1)
- Dynamic Web Project (1)
- 股市日记 (1)
- 代码片段 (0)
- CSS (1)
- PDF (0)
- 英语口语 (1)
- 乒乓球 (1)
- 体检 (0)
- 送花 (0)
- 面试准备-再战江湖 (5)
- ddq (0)
- sss (0)
- ssssss (0)
- 2020面试 (0)
最新评论
-
samsongbest:
Copperfield 写道你的目标很远大,佩服~惭愧,都忘了 ...
人生目标 -
Copperfield:
你的目标很远大,佩服~
人生目标
axis2之前只用过jws方式的即时部 署,最近一个项目要搞web service,一搜搜出一堆,发现自己已经太落后了,axis2怎么怎么好,XFire怎么性能高,绑定的方式有adb,xmlbeans,jibx等 等好几种,简直眼花缭乱,废话少说了,折腾了一个星期,总结了一点小经验,给大家少走弯路。一般网上的教程都是下载axis2的war包放到 webapps下,很少有说把axis2集成到自己的web项目中的。经过测试,按以下几步即可:
第一步:下载axis2的war, 放到tomcat下的webapps目录下,启动tomcat,自动解包出 axis2目录。
第 二步:将axis2目录下的关键文件和目录拷贝到自己的项目中。拷贝axis2/web-inf下的所有目录到你自己的web目录的web-inf下面, 除了modules目录(这个没用)。lib下的jar包还是单独拷吧,别覆盖了你的jar包。另外关键的是要修改conf目录下的axis2.xml, 注释掉关于module方面的代码就是addressing的那一行一定要注释掉。
第三步:修改你的web.xml,增加axis2的servelet
<servlet>
<display-name>Apache-Axis Servlet</display-name>
<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>
第四步:写服务端代码并编译:
package axis2test;
public class AddService {
public int add(int a,int b)
{
return a+b;
}
}
第 五步:进入web-inf/services目录下,可以看见原来axis2自带的一个version.*.aar, aar其实就是一个jar,改名了而已,用winrar打开他,清空里面的东西,然后把你的class带着目录拷贝进来,再建立一个META-INF目 录,里面放一个services.xml, 这样tomcat启动时候就可以自动部署它了。下面看看services.xml怎么写:
<?xml version="1.0" encoding="UTF-8"?>
<serviceGroup>
<service name="NBIService">
<description>This is the service for revoking certificate.</description>
<parameter name="ServiceClass" locked="false">oma.nbi.NBIServer</parameter>
<operation name="sayHello">
<messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" />
<actionMapping>urn:sayHelloRequest</actionMapping>
</operation>
</service>
</serviceGroup>
这是一种RawXMLINOutMessageReceiver模式的,适用于axiom绑定的架构,我们不用它,用RPC方式:
<?xml version="1.0" encoding="UTF-8"?>
<serviceGroup>
<service name="AddService">
<description>This is the service for revoking certificate.</description>
<parameter name="ServiceClass" locked="false">axis2test.AddService</parameter>
<operation name="add">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
</serviceGroup>
好了,server端就部署好了,现在启动tomcat,用ie查看wsdl,顺利的话,应该可以看到
http://localhost:8080/你web项目的名字/services/AddService?wsdl 来查看
第六步:
下面写客户端代码:
import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
public static void main(String[] args) throws AxisFault { http://localhost:8080/你web项目名字/services/AddService/add?a=5&b=17
public class TestClient {
EndpointReference targetEPR = new EndpointReference(
"http://localhost/ext2/services/AddService.AddServiceHttpSoap11Endpoint/
");
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
options.setTo(targetEPR);
String ns = "http://axis2test";//
这里axis2test应该是你的package路径,否则会报错找不到
QName opAdd = new QName(ns, "add");
Class[] returnTypes = new Class[]{Integer.class};
Object[] opAddArgs = new Object[]{"199", "6"};
Object[] response = serviceClient.invokeBlocking(opAdd,opAddArgs, returnTypes);
Integer result = (Integer) response[0];
if (result == null) {
System.out.println("hello didn't initialize!");
return;
}
System.out.println(result);
}
}
<ns:return>22</ns:return>
发表评论
-
asdfasdfasdfasdf
2019-04-23 10:13 0asdfasdfdfdfdfdfdfdfdfdfdfdfdfd ... -
duizhentu1009
2016-10-09 17:23 437duizhentu1009 -
duizhentu
2016-10-04 14:48 28810yue -
html poc
2016-05-31 14:48 0<!DOCTYPE HTML><html l ... -
webex
2015-03-12 20:47 0https://citigroup.webex.com/cit ... -
excel by js data
2014-12-24 00:13 0excel by js data -
cv cv cv cv 2014
2014-12-21 19:56 0cv cv cv c v -
cvcvcvcvcvcvcv
2014-12-21 18:34 0cvcvcvcvcvcvcv -
美签 XP倪敏why
2014-12-08 20:22 05魔王勇者噢噢噢哦哦噢噢噢哦哦 -
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvssssssssssssssss
2014-12-07 11:25 0AA004LS6ZS -
底板生生世世是生生世世是
2014-11-21 17:10 0Song, Shijie Michael [ICG-IT ... -
CSC
2013-08-22 22:39 0Hi Philip, Sorry for my last ... -
test
2012-07-20 13:53 664testsssssssssssssss -
为什么要用webservice解理文章(转载)
2012-06-21 23:31 629http://www.blogjava.net/java-my ... -
WSDL2Java Reference
2011-11-24 17:06 844wsdl2java -uri PipeService9.x ... -
axis2 1.6.1 codegen java.lang.reflect.InvocationTargetException
2011-09-29 09:38 951http://loshamo.javaeye.com/blog ... -
Axis2教程 命令行发布,java2wsdl,wsdl2java
2011-10-19 10:39 1055Axis2 WebService 实现webservi ... -
(转)Axis2 附件传输
2011-10-19 16:08 4157本文来自百度文库 代码和配置文件都能调通,采用比较好的方式,自 ... -
Axis2 插件安装 如何在低版本eclipse使用axis2 1.6.1插件
2011-10-19 15:31 1185在eclipse-jee-galileo-SR1-win32上 ...
相关推荐
包含升级所需所有代码与jar包,以及完整的升级说明及测试类,可直接升级到现有项目中,此代码已成功用于现有项目,请放心使用
axis2和已有web项目集成方法,axis2和已有web项目集成 axis2.war中的内容作为Web Project的基础, 来进行开发.
由于博客不允许上传附件,所以我将源代码分享到这里了,希望初学者能够从中获益,有不明白的可以到此博客进行查看:
Spring boot 集成Axis1.4 ,使用wsdd文件发布webservice
springboot集成axis2-1.7.9部署和调用实例
Eclipse 集成apache Axis2 插件,进行webService 开发,
axis2学习demo,一些零散的demo工程,请参照相关文档(博客)进行学习
简单的axis2小应用,为与外部系统通过axis2接口交互的应用测试时提供临时的挡板。
用AXIS2作为客户端调用webService的demo:亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。
用AXIS2作为客户端调用webService的demo:本人亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。
花了一个星期搞了AXIS2 发现网上的资料少之胜少, 更有一些人把一篇文章转得支离破碎的,.... 无奈 现在把我写的 service 和client 发上来 ,一个简单的demo 应该可以满足初学者的需求... 项目没有jar 自己去找... ...
今天特意将项目中用Axis2集成SSH实现WebService的过程记录下来,一方面做一下笔记,另一方面,方便广大码农朋友,希望能跟大家交流学习。 本文介绍用Axis2集成SSH搭建WebService。会达到的效果: 1.按照传统我们用...
myeclipse6.5集成axis2 以及axis2_WebService_开发指南 内含2个jar。。初学者必备!!
java axis2框架搭建和demo,可以直接运行
从网上找了好多DEMO,但是还是跑不起来,偶调试放上来,供大家参考。偶保证可以运行,偶把工程,说明文档,注意事项目都放上了。
axis2与spring的集成,在application中配置要发布的Java类,然后配置aar文件,在aar打包文件中的services.xml要嵌入 <parameter name="ServiceObjectSupplier">org.apache.axis2.extensions.spring.receivers....
Spring+Axis2+Maven搭建WebService服务端demo测试用例
Axis2集成SSH搭建WebService支持事务,WebService服务还是挺多人用的
包含了 axis2 1.7.4版本的war包 也可以自行去 apache官网下载 ,另外还包含一个已经集成了axis2的web工程源码 使用的jdk1.6开发,可以直接把web工程导入到myeclipse,部署到tomcat可运行后,浏览器输入 ...