java調用webservice接口:免費webservice測試工具

一、發布webservice

1.se37 創建webservice服務

SAP 發布webservice和調用webservice

2.TCODE:SOAMANAGER

SAP 發布webservice和調用webservice

3.定義服務banding:

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

輸入服務名稱,點擊下一步:

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

生成WSDL:

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

url輸入瀏覽器和sap登錄驗證信息,測試wsdl:

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

至此,webservice發布完成。

二、調用webservice

創建webservice使用者

SAP 發布webservice和調用webservice

選擇Service Consumer

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

這裡測試用配置個本地對象

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

生成代理類:

SAP 發布webservice和調用webservice

激活所有對象

SAP 發布webservice和調用webservice

Se80企業服務,可以看到代理類信息:

SAP 發布webservice和調用webservice

再次回到TCODE:SOAMANAGER,配置代理類的邏輯端口:

SAP 發布webservice和調用webservice

注意這次搜索”消費者代理”:

SAP 發布webservice和調用webservice

這裡選擇基於WSDL配置,後面步驟會比較多,(我測試過其他幾個選項都不行):

SAP 發布webservice和調用webservice

邏輯端口:邏輯端口是指邏輯意義上用於區分服務的端口,如TCP/IP協議中的服務端口,端口號的範圍從0到65535,比如用於瀏覽網頁服務的80端口,用於FTP服務的21端口等。由於物理端口和邏輯端口數量較多,為了對端口進行區分,將每個端口進行了編號,這就是端口號。簡單來說,ip地址是用來區分主機,端口號是用來區分主機上的不同服務

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

一直下一步直到完成

Ping web服務

SAP 發布webservice和調用webservice
SAP 發布webservice和調用webservice

程序中調用:

DATA:lo_cx_root TYPE REF TO cx_root.

DATA:l_prox_e TYPE REF TO zco_sap_service_port_type.

DATA:lo_sys_exception TYPE REF TO cx_ai_system_fault,

cx_ai_application_fault TYPE REF TO cx_ai_application_fault

IF l_prox_e IS INITIAL.

TRY.

CREATE OBJECT l_prox_e

EXPORTING

logical_port_name = ‘ZLP01’.

CATCH cx_ai_system_fault INTO lo_sys_exception.

IF lo_sys_exception->errortext IS NOT INITIAL.

output-msgty = ‘E’.

output-msgtx = lo_sys_exception->errortext.

APPEND output.CLEAR:output.

EXIT.

ENDIF.

CATCH cx_ai_application_fault INTO cx_ai_application_fault.

ENDTRY.

ENDIF.

invoke_flow_request-in0 = lv_json.

TRY.

CALL METHOD l_prox_e->invoke_flow

EXPORTING

invoke_flow_request = invoke_flow_request

IMPORTING

invoke_flow_response = invoke_flow_response.

CATCH cx_ai_system_fault INTO lo_sys_exception.

IF lo_sys_exception->errortext IS NOT INITIAL.

output-msgty = ‘E’.

output-msgtx = lo_sys_exception->errortext.

APPEND output.CLEAR:output.

EXIT.

ENDIF.

CATCH cx_ai_application_fault INTO cx_ai_application_fault.

ENDTRY.

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/225651.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-09 14:45
下一篇 2024-12-09 14:45

相關推薦

發表回復

登錄後才能評論