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 实现,就别劳民伤财了。

PacificRack 端午节再来一款年付$38 VPS主机 2核4GB内存1TB流量

这不端午节和大家一样回家休息几天,也没有照顾网站的更新。今天又出去忙一天没有时间更新,这里简单搜集看看是不是有一些商家促销活动,因为我看到电商平台各种推送活动今天又开始一波,所以说现在的各种促销让人真的很累。比如在前面我们也有看到PacificRack 商家发布过年中活动,这不在端午节(昨天)又发布一款闪购活动,有些朋友姑且较多是端午节活动,刚才有看到活动还在的,如果有需要的朋友可以看看。第一、端...

DMIT:美国cn2 gia线路vps,高性能 AMD EPYC/不限流量(Premium Unmetered),$179.99/月起

DMIT怎么样?DMIT最近动作频繁,前几天刚刚上架了日本lite版VPS,正在酝酿上线日本高级网络VPS,又差不多在同一时间推出了美国cn2 gia线路不限流量的美国云服务器,不过价格太过昂贵。丐版只有30M带宽,月付179.99美元 !!目前,美国云服务器已经有个4个套餐,分别是,Premium(cn2 gia线路)、Lite(普通直连)、Premium Secure(带高防的cn2 gia线...

国内云服务器 1核 2G 2M 15元/月 萤光云

标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...

axis2为你推荐
bean是什么意思在jdbc的DAO是什么意思?还有bean?instagram电脑版苹果软件商店评出最佳摄影类软件有哪些?renderpartialHtml.RenderPartial 报错怎么用电脑发短信怎么样用电脑给手机发短信?网络安全密钥网络安全密钥一般是什么防火墙技术应用在网络支付流程中,防火墙技术与数据加密技术应用则重点有什么不同?gbk内码高考姓名gbk内码查询怎么查微信注册时间微信号用了多久,怎么知道在线沟通什么是在线状态?particular教程怎样做ae粒子云效果
虚拟主机试用30天 域名中介 域名管理 泛域名 域名注册godaddy 天津服务器租赁 中国万网虚拟主机 万网域名解析 香港机房 iisphpmysql godaddy优惠券 网站实时监控 php免费空间 nerds 可外链网盘 cn3 申请网页 最漂亮的qq空间 东莞idc 万网空间 更多