PB调用java编写的webservice需要注意的几点

webservice在日常工作中越来越被重用,尤其是大型的信息化建设。闲话少说,笔者就前段时间自己的经历来浅谈一下注意事项。至于如何使用java编写webservice,pb如何创建webservice代理对象,如何调用,可以自己到网上搜索,就不具体阐述了。

        利用java开发webservice,开发工具:myeclipse10.7+tomcat7+jdk6

1、使用axis2开发

        需要下载myeclipse的axis2插件、Axis标准包和Axis War包,并对tomcat做一些配置,这个大家可以到网上搜一下如何开发,笔者采用打aar包的方式进行开发,虽然不方便调试,但编写起来比较方便,部署也还比较方便。也可以参照:http://blog.csdn.net/tanguang_honesty/article/details/38661073  PB9和PB12均可以正常调用。

2、使用XFire开发

        利用myeclipse自带的向导开发,可以参照:http://blog.csdn.net/meteorlwj/article/details/4545100  发布到tomcat上,自己写了个java测试小程序可以正常调用。

 a.使用pb9创建代理对象,调用方法时,会报错: pb Unknown SOAP response tag……

 解决方法:使用 MSSOAPLib.SoapClient ,即OLE方式调用MSSOAP.SoapClient实现。示例代码:

OLEObject MSSOAPLib1
MSSOAPLib1= CREATE OLEObject
long ll_result 
ll_result = MSSOAPLib1.ConnectToNewObject("MSSOAP.SoapClient")
if ll_result <> 0 then
messagebox("系统提示","连接MSSOAP.SoapClient失败!返回参数:"+string(ll_result))
end if
MSSOAPLib1.mssoapinit("http://172.17.99.20:9090/yygh/services/Query?wsdl")
mle_content.Text = MSSOAPLib1.sendXml("Sina", sle_userid.text, sle_passwd.text, sle_mobileno.text, mle_content.text, "new")

 b.使用pb12创建代理对象,调用方法时,会报错: unknown wrapper element found…… 好像是类型不对,最后也没找到解决办法。

3、使用CXF开发

     使用CXF开发webservice比较方便,到网上搜一下即可,但PB9、PB12创建代理对象调用时,同样报错: unknown wrapper element found…… ,这个问题始终没有找到解决办法,希望以后能有人解决顺便告知一下。

     最后笔者查了一下资料,axis2专业开发webservice,而XFire、CXF对spring等结合较好,而且开发出来的webservice在被调用的时候相应时间较短,不少人喜欢使用CXF开发。而axis2相对来说可能复杂一些,但实践证明,用它开发出来的webservice,pb调用起来比较方便,而另外两个总让人感觉不尽人意。另外.net开发的webservice,pb调用起来也比较方便、稳定。至于使用jdk开发webservice,笔者没有进行测试。



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值