xFire NullPointerException和CXF使用

来源:互联网 发布:电视为什么连不上网络 编辑:程序博客网 时间:2024/05/16 11:03

前天跟其他公司联调,结果发现我们的web service一个大bug

之前用的是xFire(一个已经死掉的项目)

只要稍微并发大一点,就会报空指针,而且cpu占用率暴涨,就算停止调用也不不会降下来,

经过一番baidu,google,终于找到了有同样经历的兄弟,他提出了解决办法

网址:http://fromzero214.blog.163.com/blog/static/168740535201272112145434/

那就是直接改xFire的源代码,说是用到了一个ArrayList不是线程安全

xfire都停止更新这么多年了,还找它的源代码过来改...

开源的项目都是依赖于若干多个不知道是干什么的包的,谁知道这些依赖的项目现在变成啥样子了,算了,还是不要鸟它了,换一个

如果目标系统是用jdk6那可就好办了,本身就支持,可以我们用的是jdk1.5,没办法,找第三方类库吧

查了一下,cxf是xfire的后续版本,那就用它好了

一下下来,擦,37兆,什么东东啊,一个ws类库37兆~~~~

打开一看,jar包几十个,晕,现在的开源项目都有这个问题,依赖的jar包一堆堆的,真受不了

没得选择那就接受吧,开始研究怎么用,老子不用spring滴,经过一番折腾,终于搞定,但是以前的xfire写的客户端发过来有问题,

参数传不过来,又搜索一番,找到原因是schema的问题,

ok,加一个package-info.java,设置下参数,终于全部搞定

经过简单功能测试和性能测试,还算比较稳定,不错,哈

有空再将demo代码上传上来,不过网上也有不少这个的源代码了,反正有需要的就拿去做个参考吧