axis2Axis、Axis2和CXF哪个更好些

axis2  时间:2021-06-22  阅读:()

监控摄像头中的2 axis是什么参数

Axis2是下一代 Apache Axis。

Axis2 虽然由 Axis 1.x 处理程序模型提供支持,但它具有更强的灵活性并可扩展到新的体系结构。

Axis2 基于新的体系结构进行了全新编写,而且没有采用 Axis 1.x 的常用代码。

支持开发 Axis2 的动力是探寻模块化更强、灵活性更高和更有效的体系结构,这种体系结构可以很容易地插入到其他相关 Web 服务标准和协议(如 WS-Security、WS-ReliableMessaging 等)的实现中。

Axis2 是Axis的后续版本,是新一代的SOAP引擎

帮下我 ,我急需Axis2基于web service实现的相关代码以及具体操作。

1. 配置tomcat和SOAP引擎

下载axis2-1.4.1-bin.zip和axis2-1.4.1-war.zip,分别解压。

在axis2-1.4.1-war.zip解压出来的文件夹中有一个axis2.war,把它复制到“<tomcat安装目录>/webapps/”目录下,启动Tomcat,即可看到在“<tomcat安装目录>/webapps/”目录下有个axis2的文件夹

在浏览器的地址栏中,输入http://localhost:8080/axis2/,验证axis2安装成功。

2. 简单的Web service程序在Axis2中发布

简单的POJO,代码如下:

public class MyService {

public String getHello()

{

return "hello world";

}

public String getName(String name)

{

return "Hello "+name;

}

public int getPlus(int a, int b)

{

return a+b;

}

}

把编译之后的MyService.class放到

<Tomcat安装目录>/webapps/axis2/WEB-INF/pojo下,浏览器输入http://localhost:8080/axis2/services/listServices,显示已发布的服务。

浏览器地址栏输入:http://localhost:8080/axis2/services/MyService/getHello

可显示相关xml格式的返回内容。

浏览器地址栏输入:

http://localhost:8080/axis2/services/MyService/getName?name=bill

可显示相关xml格式的返回内容。

浏览器地址栏输入:

http://localhost:8080/axis2/services/MyService/getPlus?a=1&b=2

可显示相关xml格式的返回内容。

说明服务发布成功且可访问。

3. 编写程序利用SOAP调用web service

编写MyRPCClient类作为访问的客户端,使用RPC方式(RPCServiceClient)调用WebService,在RPC中指定WebService的URL,指定getHello方法返回值的数据类型的Class对象,并且指定要调用的getHello方法及WSDL文件的命名空间,最后调用RPC的invokeBlocking方法并输出该方法的返回值。

同理,调用getName和getPlus的方法与以上步骤类似。

4. 使用Axis2提供的工具,根据WSDL生成客户端代码,调用该代码访问web service

在系统环境变量中配置AXIS2_HOME的地址,在CMD控制台下输入%AXIS2_HOME%/bin/wsdl2java -uri http://localhost:8080/axis2/services/MyService?wsdl -p client -s -o stub即可在当前路径下生成stub文件夹,其中包括了一个MyServiceStub的类,把这个类复制到项目之中,用wsdl2java编写简化的客户端程序。

MyServiceStub stub = new MyServiceStub();//创造一个服务对象

stub.getHello().get_return();//得到getHello()的返回值

MyServiceStub.GetName gn = new MyServiceStub.GetName();//创造一个封装getName的对象

gn.setName(name);//设置参数

System.out.println( stub.getName(gn).get_return());//输出放回值

遇到的一些问题:

问题1: MyService类中包含一个getService方法,想利用对这个方法的不同重载,使其可以同时使用无输入、一个String输入和两个int输入不同方法,结果在浏览器中访问的时候无法访问。

解决方案:不能用重载来实现发布不同方法的功能,编写三个不同的方法来实现不同的功能,分别为:getHello()输出“hello world”,getName(String name)输出“hello $name”,getPlus(int a,int b)输出两数之和“$a+b”。

问题2:用wsdl2java编译生成stub类后,无法再程序中连接。

解决方案:发现我用的axis2为1.53版本,编译生成的stub类中自动生成的地址是https开头,不能正确连接,换为统一版本(1.41)后,自动生成的地址为http开头,经测试,连接成功。

Axis、Axis2和CXF哪个更好些

新一代的 Web Services 框架如 Axis2、CXF 都是由现有的项目中逐渐演化而来的,Axis2 是由大家熟悉的 Axis 1.x 系列演化过来,而 Apache CXF 则是由 Celtix 和 XFire 项目整合而生,并且刚刚发布了 2.0.2 的最新版本,不过仍是 Apache 的一个孵化项目。

Axis2 是对 Axis 进行了彻底的重写的一个新项目了,它使用了新的模块化架构,更方便于功能性的扩展等等。

Apache CXF 则是由 XFire 和 Celtix 两个现有的项目进行了重组。

对于现在的应用程序的迁移,如果你的应用程序是稳定而成熟的,并且在可预知的未来的情况下,只要很少的一些需求变更要做的话,那么保存你的体力,不要去做“劳民伤财“的迁移工作了。

如果你的现有应用程序BUG缠身,性能,功能等等都一片糟糕的话,那就要考虑迁移了,那选哪个框架呢?先比较一下它们的不同之处: 1、Apache CXF 支持 WS-Addressing、WS-Policy、WS-RM、WS-Security和WS-I BasicProfile 2、Axis2 支持 WS-Addressing、WS-RM、WS-Security和WS-I BasicProfile,WS-Policy将在新版本里得到支持 3、Apache CXF 是根据Spring哲学来进行编写的,即可以无缝地与Spring进行整合 4、Axis2 不是 5、Axis2 支持更多的 data bindings,包括 XMLBeans、JiBX、JaxMe 和 JaxBRI,以及它原生的 data binding(ADB)。

6、Apache CXF 目前仅支持 JAXB 和 Aegis,并且默认是 JAXB 2.0,与 XFire 默认是支持 Aegis 不同,XMLBeans、JiBX 和 Castor 将在 CXF 2.1 版本中得到支持,目前版本是 2.0.2 7、Axis2 支持多种语言,它有 C/C++ 版本。

2、如果应用程序是遵循 Spring 哲学路线的话,Apache CXF 是一种更好的选择,特别对嵌入式的 Web Services 来说; 3、如果应用程序没有新的特性需要的话,就仍是用原来项目所用的框架,比如 Axis1,XFire,Celtrix 或 BEA 等等厂家自己的 Web Services 实现,就别劳民伤财了。

NameCheap域名转入优惠再次来袭 搜罗今年到期域名续费

在上个月的时候也有记录到 NameCheap 域名注册商有发布域名转入促销活动的,那时候我也有帮助自己和公司的客户通过域名转入到NC服务商这样可以实现省钱续费的目的。上个月续费转入的时候是选择9月和10月份到期的域名,这不还有几个域名年底到期的,正好看到NameCheap商家再次发布转入优惠,所以打算把剩下的还有几个看看一并转入进来。活动截止到9月20日,如果我们需要转入域名的话可以准备起来。 N...

Hostodo美国独立日优惠套餐年付13.99美元起,拉斯维加斯/迈阿密机房

Hostodo又发布了几款针对7月4日美国独立日的优惠套餐(Independence Day Super Sale),均为年付,基于KVM架构,采用NVMe硬盘,最低13.99美元起,可选拉斯维加斯或者迈阿密机房。这是一家成立于2014年的国外VPS主机商,主打低价VPS套餐且年付为主,基于OpenVZ和KVM架构,产品性能一般,支持使用PayPal或者支付宝等付款方式。商家客服响应也比较一般,推...

wordpress专业外贸建站主题 WordPress专业外贸企业网站搭建模版

WordPress专业外贸企业网站搭建模版,特色专业外贸企业风格 + 自适应网站开发设计 通用流行的外贸企业网站模块 + 更好的SEO搜索优化和收录 自定义多模块的产品展示功能 + 高效实用的后台自定义模块设置!采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器: IE 6+(以及类似360、遨游等基于IE内核的)、Firefox、Google Chrome、Safari、Opera...

axis2为你推荐
网络视频下载器谁能给我找个网络视频下载器和转换器?flash实例Flash元件和实例的概念及关系?listviewitemListView具有多种item布局5e5e5e如何更改bootstrap navbar的颜色 03 Topics 03 Ruby Chinacomexceptionapro exception是什么意思多看论坛kindle哪个型号最好用在线沟通网络沟通的问题有哪些idataparameterweighting parameter是什么意思flushes翻譯下面的日記如何查看qq特别关心我的人qq空间特别关心我的人怎么看
备案域名购买 已备案域名出售 互联网域名管理办法 googleapps 搬瓦工官网 服务器日志分析 回程路由 灵动鬼影 好看qq空间 阿里云浏览器 赞助 nerds qq云端 免费美国空间 idc查询 电信主机 空间首页登陆 atom处理器 云服务是什么意思 服务器硬件配置 更多