欢迎来到天天文库
浏览记录
ID:14009422
大小:56.50 KB
页数:9页
时间:2018-07-25
《pb调用webservice》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、webservice服务器端会提供wsdl接口文档,pb里面用web service proxy wizard从wsdl生成对象,再调用即可(注意把c:program filessybasesharedpowerbuilder下面的pbsoapclient90.pbd加入target),代码样例:SoapConnection lsc_connsoapservice lproxy_objString ls_proxy_name = "soapservice"//生成的代理对象名称String ls_url = "htt
2、p://localhost:8080/axis/services/SoapService"//web service url//lsc_conn = Create SoapConnectionlsc_conn.SetOptions("SoapLog=~"soaplog.txt~"")int li_ret, ili_ret = lsc_conn.Createinstance( lproxy_obj, ls_proxy_name, ls_url)If li_ret <> 0 ThenMessageBox("错误", "调用失败,
3、错误号码:" + String(li_ret))Return End Iftns1__requestcontent lst_requestlst_request.arg1 = 5lst_request.arg2 = "test"tns1__returnresult lst_resultlst_result = lproxy_obj.GetResult(lst_request)MessageBox(String(lst_result.result), "code:" + lst_result.reason.code + "~n
4、message:" + &lst_result.reason.message + "~ndesc:" + lst_result.reason.desc )注意pb调用webservice只能返回简单的int string类型,复杂的结构会出错怎么样在pb9里面调用WebServicepb9也出来了,速度够快的,大概看了一下,与pb8比较,增加的功能不多,主要是WebService,Xml和Ejb.我就感受了一下pb9的WebService功能,与大家共享。我们用一个实例来说明:新建应用,这些步骤与pb8一致的。然后建立一个W
5、ebServiceProxyWizard,下一步会提示你输入WSDL文件,点击浏览选择,假设是C:inetpubwwwroot的service1.wsdl文件。点击下一步,会自动出现WSDL文件中的Service.点击下一步,系统默认选择ServiceSoap,紧接着输入proxyname(代理对象名),输入test_ws.后面的几项按默认即可。完成后是编译代理对象的界面。会出现:WebServiceGeneratorProjectStatusDeploymentPBL:E:programpbwebservice
6、w_app.pblClearPBLonbuild:NoConfirmoverwrites:NoWSDLLocation:file://E:programpbwebserviceservice1.wsdlServicesselected:ServiceService1:Service1Soap可以在属性中设置,也可以不用去管。点击编译的绿色图标,好了,一个代理对象生成了。在左边的treeview中可以看到如:test_wsservice1soap的东西。点击加号的图标,在function中可以看到里面的我们定义的sh
7、ow(stringyourname)returnsstring.好了最重要的一步已经完成了,我们来测试一下:建一个windows,添加一个文本框和按钮控件。在cb_1.click事件写入:SoapConnectionconnTest_wsservice1soaptest_wslongrVal//stringstr_endpoint//str_endpoint="http://localhost/webserver/service1.asmx?WSDL"conn=createSoapConnectionrVal=Conn.Cr
8、eateInstance(test_ws,"test_wsservice1soap")sle_1.text=test_ws.show("你的参与是我们最大的支持")destroyconn好了,保存,会提示SoapConnection未定义。增加PBSoapClient90.pbd到库列表中
此文档下载收益归作者所有