如何在pb9中调用WebService

发表于:2007-05-25来源:作者:点击数: 标签:WebServicepb9出来了何在调用
pb9也出来了,速度够快的,大概看了一下,与pb8比较,增加的功能不多,主要是WebService,Xml和Ejb.我就感受了一下pb9的WebService功能,与大家共享。 我们用一个实例来说明: 新建应用,这些步骤与pb8一致的。然后建立一个WebServiceProxyWizard,下一步会提示
pb9也出来了,速度够快的,大概看了一下,与pb8比较,增加的功能不多,主要是WebService,Xml和Ejb.我就感受了一下pb9的WebService功能,与大家共享。
      我们用一个实例来说明:
      新建应用,这些步骤与pb8一致的。然后建立一个WebService  Proxy  Wizard,下一步会提示你输入WSDL文件,点击浏览选择,假设是C:\.netpub\wwwroot\的service1.wsdl文件。点击下一步,会自动出现WSDL文件中的Service.点击下一步,系统默认选择ServiceSoap,紧接着输入proxy  name(代理对象名),输入test_ws.后面的几项按默认即可。
    完成后是编译代理对象的界面。会出现:
    Web  Service  Generator  Project  Status
    Deployment  PBL:    E:\program\pb\webservice\w_app.pbl
    Clear  PBL  on  build:    No
    Confirm  overwrites:    No
    WSDL  Location:    file://E:\program\pb\webservice\service1.wsdl
    Services  selected  :
    Service  Service1:
    Service1Soap
    可以在属性中设置,也可以不用去管。点击编译的绿色图标,好了,一个代理对象生成了。
    在左边的treeview中可以看到如:test_wsservice1soap的东西。
    点击加号的图标,在function中可以看到里面的我们定义的show(string  yourname)  returns  string.
    好了最重要的一步已经完成了,我们来测试一下:
    建一个windows,添加一个文本框和按钮控件。
    在cb_1.click事件写入:
    SoapConnection  conn  
    Test_wsservice1soap  test_ws  

    long  rVal
    //string  str_endpoint
    //str_endpoint  =  "http://localhost/webserver/service1.asmx?WSDL"
    conn  =  create  SoapConnection    
    rVal  =  Conn.CreateInstance(test_ws,  "test_wsservice1soap")
    sle_1.text  =  test_ws.show("你的参与是我们最大的支持")  
    destroy  conn
    好了,保存,会提示SoapConnection未定义。
    增加PBSoapClient90.pbd到库列表中。PBSoapClient90.pbd在pb安装目录下    Shared\PowerBuilder。增加后左边treeview会出现soapconnection,SOAP  server
soapexception 两个对象.
运行,点击按钮,文本框中出现http://www.ourfly.com欢迎你的参与是我们最大的支持
注意的是:Service1.asmx文件在服务器上是可以运行的,否则不会出现东西的。
希望更多精彩的东西,能与大家分享。

原文转自:http://www.ltesting.net