最近在做web Service这块,起初用的是XFire1.2.6,MyEclipse开发工具支持很好,不管是客户端和服务端只要打个war包部署上即可。
但是,处于一些政治原因,XFire被叫停了,换到Axis2上,研究后发现:
1、Axis2开发工具支持力度不够,需要自己写Ant脚本,认了。
2、Axis2效率不及XFire,能用就行,管不了那么多了,反正不是我定的。
3、Axis2打包部署依赖与于Axis2自带的一个axis2.war,也就是说,你要部署你的web 服务,必须将web服务打成aar或者mar包放到%<TOMCAT_HOME>%\webapps\axis2\WEB-INF\下的modules或者services下面。真他妈狗屎,如果web服务和web应用在一起开发,并且web服务的实现依赖web应用的实现,难道还要手动把应用和服务分开?然后解开axis2.war,并将web服务放进去? 并且,我仅关心系统能向外发布什么服务,要你做个axis2.war做什么?反复试了好几次,离开这个axis2.war服务就没法发布了。这点实在是令人忍无可忍!
回过头看看XFire,服务是web应用的一部分,放到一个war包中一块发布,没有任何问题,不管你部署到任何servle容器上。但是axis2烂货对服务器weblogic、WebSphere等服务器还不服,不把你折腾个精疲力尽才怪,tomcat下好些。
怪不得Apache收购了XFire,形成了一个新项目CXF,有空大家可以研究研究。
以上都是本人发泄发泄,希望看到本文的朋友们别在被折腾了。我也坚信技术在发展,Web Service的开发会越来越容易,越来越更规范化。
本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/89418,如需转载请自行联系原作者