首先需要获取外部Web service的URL
这里我们以:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl为例
该服务通过输入QQ号码(String)检测QQ在线状态。返回数据(String)Y= 在线;N = 离线 ;E = QQ号码错误......
TCODE-SE80下创建proxy
输入URL
激活后proxy创建完成
接下来要配置逻辑端口,我们可以使用一款名为WebServiceStudio的软件
填如对应的服务
找到<soap:operation soapAction="http://WebXml.com.cn/qqCheckOnline"style="document" />
对应的操作
TCODE-LPCONFIG下配置逻辑端口
填入URL
填入操作
保存激活后逻辑端口配置完毕
回到se80测试一下代理类
服务调用成功
在程序中的使用可参考以下代码:
DATA: go_proxy TYPE REF TO zco_qq_online_web_service_soap,
gs_input TYPE zqq_check_online_soap_in,
gs_output TYPE zqq_check_online_soap_out,
go_exception TYPE REF TO cx_ai_system_fault.
TRY.
CREATE OBJECT go_proxy.
gs_input-qq_code = '*********'.
go_proxy->qq_check_online(
EXPORTING
input = gs_input
IMPORTING
output = gs_output ).
WRITE gs_output-qq_check_online_result.
CATCH cx_ai_system_fault INTO go_exception.
WRITE go_exception->errortext.
ENDTRY.