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

搬瓦工(季付46.7美元)新增荷兰(联通线路)VPS,2.5-10Gbps

搬瓦工最近新增了荷兰机房中国联通(AS9929、AS4837)线路的VPS产品,选项为NL - China Unicom Amsterdam(ENUL_9),与日本软银和洛杉矶(DC06)CN2 GIA配置一致可以互换,属于高端系列,2.5Gbps-10Gbps大带宽,最低季付46.7美元起。搬瓦工VPS隶属于老牌IT7公司旗下,主要提供基于KVM架构VPS主机,数据中心包括美国洛杉矶、凤凰城、纽...

可抵御99%的攻击中国单域版cdn:9元/月7T防御 cloudsecre

官方网站:点击访问CDN客服QQ:123008公司名:贵州青辞赋文化传媒有限公司域名和IP被墙封了怎么办?用cloudsecre.com网站被攻击了怎么办?用cloudsecre.com问:黑客为什么要找网站来攻击?答:黑客需要找肉鸡。问:什么是肉鸡?答:被控的服务器和电脑主机就是肉鸡。问:肉鸡有什么作用?答:肉鸡的作用非常多,可以用来干违法的事情,通常的行为有:VPN拨号,流量P2P,攻击傀儡,...

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

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

axis2为你推荐
mergefield邮件合并中如何插入百分数databasenamefoxpro中的的命令格式在线沟通有效沟通的六个要点flash序列号急求flash序列号validdate怎样解决oracle报错is not a valid date and timeidataparameterunsigned char idata是什么意思flex是什么这些b365m和b360m什么意思ps5教程怎样用PS5打字data什么意思data是什么文件夹可以删除吗手机在线客服手机客服热线
美国vps评测 动态ip的vps yardvps tier mediafire directadmin 搜狗12306抢票助手 静态空间 免费活动 爱奇艺vip免费试用7天 Updog 如何建立邮箱 创建邮箱 web服务器搭建 申请网站 免费的asp空间 114dns 万网主机 后门 godaddyssl 更多