pb调用webservice 怎么知道是否连接成功

huiemily 2013-09-17 09:52:08
long rVal
string httpport
httpport = gs_httpport
try
conn = create SoapConnection
rVal = Conn.CreateInstance(ws, "jxjzswebserhttpport",httpport)
// messagebox("connect",string(rVal))
catch (SoapException e1)
messagebox('WebService连接失败',e1.GetMessage())
end try

以上是代码,如果我将httpport这个地址的IP改了,
rVal也是返回0,但到了后面调用函数时,就直接报PB错误,有没有办法在生成代理时,没有连接成功就先提示出来,写一个messagebox。这样用户看到时比较容易知道原因。不然直接报一个pb错误。用户不明白以为是系统有问题。
请大家帮看看。谢谢。
...全文
313 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
huiemily 2013-09-18
  • 打赏
  • 举报
回复
谢谢,已OK了。
WorldMobile 2013-09-17
  • 打赏
  • 举报
回复
引用 楼主 huiemily 的回复:
long rVal string httpport httpport = gs_httpport try conn = create SoapConnection rVal = Conn.CreateInstance(ws, "jxjzswebserhttpport",httpport) // messagebox("connect",string(rVal)) catch (SoapException e1) messagebox('WebService连接失败',e1.GetMessage()) end try 以上是代码,如果我将httpport这个地址的IP改了, rVal也是返回0,但到了后面调用函数时,就直接报PB错误,有没有办法在生成代理时,没有连接成功就先提示出来,写一个messagebox。这样用户看到时比较容易知道原因。不然直接报一个pb错误。用户不明白以为是系统有问题。 请大家帮看看。谢谢。
先用posturl,连接一下,取一下返回值,根据返回的内容判断是否连接成功
zhangyangziwo 2013-09-17
  • 打赏
  • 举报
回复
请教,pb可以做 try throw吗
pb8 2013-09-17
  • 打赏
  • 举报
回复
createinstance并不会进行网络访问,所以这个位置是不会出错的,它只会建立代理的引用关系,并初始化代理对象,另外,你后面调用的webservice肯定要进行错误捕获的,因为在互联网上,即使你第一次调用OK,第二次调用时就有可能是断网了,所以都要放在try中或throw 另外,如果想确定是否成功,可以写个比如test()或getver()之类的小方法,在createinstace OK后就调用,根据它的返回值(并try)进行控制

662

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder Web 应用
社区管理员
  • Web 应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧