版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Good is good, but better carries it.精益求精,善益求善。WebService與SAPECC系統(tǒng)服務(wù)發(fā)布與調(diào)用SAPECC系統(tǒng)WebService服務(wù)發(fā)布與調(diào)用目錄TOCo1-3hzuHYPERLINKl_Toc230670062WebService概念PAGEREF_Toc230670062h5HYPERLINKl_Toc230670063ECC6.0SP14之后版本PAGEREF_Toc230670063h6HYPERLINKl_Toc230670064發(fā)布WebService服務(wù):PAGEREF_Toc230670064h6HYPERLINKl_Toc2
2、306700651.SE37創(chuàng)建FunctionPAGEREF_Toc230670065h6HYPERLINKl_Toc2306700662.SE80創(chuàng)建服務(wù)PAGEREF_Toc230670066h7HYPERLINKl_Toc2306700673.SOAMANAGER配置服務(wù)PAGEREF_Toc230670067h9HYPERLINKl_Toc230670068調(diào)用SAP系統(tǒng)發(fā)布的WebService服務(wù)PAGEREF_Toc230670068h14HYPERLINKl_Toc2306700691.SE80創(chuàng)建代理PAGEREF_Toc230670069h14HYPERLINKl_Toc
3、2306700702.LPCONFIG創(chuàng)建LogicalPortPAGEREF_Toc230670070h15HYPERLINKl_Toc2306700713.測(cè)試代理PAGEREF_Toc230670071h18HYPERLINKl_Toc230670072調(diào)用外部異構(gòu)系統(tǒng)發(fā)布的WebService服務(wù)PAGEREF_Toc230670072h21HYPERLINKl_Toc2306700731.SE80創(chuàng)建代理PAGEREF_Toc230670073h21HYPERLINKl_Toc2306700742.LPCONFIG創(chuàng)建LogicalPortPAGEREF_Toc230670074h2
4、2HYPERLINKl_Toc2306700753.測(cè)試代理PAGEREF_Toc230670075h24HYPERLINKl_Toc230670076ECC6.0SP14之前版本PAGEREF_Toc230670076h26HYPERLINKl_Toc230670077發(fā)布WebService服務(wù):PAGEREF_Toc230670077h26HYPERLINKl_Toc2306700781.SE37創(chuàng)建FunctionPAGEREF_Toc230670078h26HYPERLINKl_Toc2306700792.SE80創(chuàng)建服務(wù)PAGEREF_Toc230670079h27HYPERLIN
5、Kl_Toc2306700803.WSCONFIGPAGEREF_Toc230670080h31HYPERLINKl_Toc2306700814.WSADMINPAGEREF_Toc230670081h33HYPERLINKl_Toc230670082調(diào)用WebService服務(wù)。PAGEREF_Toc230670082h35HYPERLINKl_Toc2306700831.SE80創(chuàng)建代理PAGEREF_Toc230670083h35HYPERLINKl_Toc2306700842.LPCONFIG創(chuàng)建LogicalPortPAGEREF_Toc230670084h36HYPERLINKl_
6、Toc2306700853.測(cè)試代理PAGEREF_Toc230670085h37WebService概念簡(jiǎn)單來(lái)說(shuō),WebService就是為了使原來(lái)各孤立的站點(diǎn)之間的信息能夠相互通信、共享而提出的一種接口。WebService所使用的是Internet上統(tǒng)一、開(kāi)放的標(biāo)準(zhǔn),如HTTP、XML、SOAP(簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議)、WSDL等,所以WebService可以在任何支持這些標(biāo)準(zhǔn)的環(huán)境(Windows,Linux)中使用。注:SOAP協(xié)議(SimpleObjectAccessProtocol,簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議),它是基于XML的用于分散和分布式環(huán)境下網(wǎng)絡(luò)信息交換的通訊協(xié)議。在此協(xié)議下,軟件組件
7、或應(yīng)用程序能夠通過(guò)標(biāo)準(zhǔn)的HTTP協(xié)議進(jìn)行通訊。它的設(shè)計(jì)目標(biāo)就是簡(jiǎn)單性和擴(kuò)展性,這有助于大量異構(gòu)程序和平臺(tái)之間的互操作性,從而使存在的應(yīng)用程序能夠被廣泛的用戶訪問(wèn)。優(yōu)勢(shì)1.跨平臺(tái)。2.支持度高,SOAP協(xié)議是基于XML和HTTP這些業(yè)界的標(biāo)準(zhǔn)的。3.數(shù)據(jù)是以ASCII文本的方式而非二進(jìn)制傳輸,調(diào)試方便,并實(shí)現(xiàn)跨防火墻通信。4.技術(shù)難度低,開(kāi)發(fā)周期短,WebService實(shí)現(xiàn)的技術(shù)難度遠(yuǎn)遠(yuǎn)低于CORBA和DCOM。5.實(shí)現(xiàn)代碼和數(shù)據(jù)的重用。6.成本低,在B2B集成方面,WebService可以低成本的實(shí)現(xiàn)。7.用Webservice來(lái)集成各種應(yīng)用中的功能,能為用戶提供一個(gè)統(tǒng)一的界面局限性1.使用了
8、XML對(duì)數(shù)據(jù)封裝,會(huì)造成大量的數(shù)據(jù)要在網(wǎng)絡(luò)中傳輸。2.沒(méi)有規(guī)定任何與實(shí)現(xiàn)相關(guān)的細(xì)節(jié),包括對(duì)象模型、編程語(yǔ)言。3.單機(jī)應(yīng)用程序和局域網(wǎng)上的同構(gòu)應(yīng)用程序不適用WebService。ECC6.0SP14之后版本發(fā)布WebService服務(wù):1.SE37創(chuàng)建Function選擇Remote-EnabledModule。完成Function代碼,包括輸入輸出參數(shù)。2.SE80創(chuàng)建服務(wù)SE80選擇開(kāi)發(fā)包或者本地對(duì)象右鍵CreateEnterpriseService/WebServiceWebService選擇ServiceProvider,點(diǎn)擊Continue。選擇ExistingABAPObjects,
9、點(diǎn)擊Continue。填入ServiceDefinition和ShortText,EndpointType選擇FUNCFunctionModule,點(diǎn)擊Continue。填入FunctionModule名稱,點(diǎn)擊Continue。Profile一般選擇PRF_DT_IF_SEC_NO即可。PRF_DT_IF_SEC_HIGHAuthenticationusingcertificatesandtransportguaranteesPRF_DT_IF_SEC_LOWAuthenticationusingUserIDandpassword,notransportguaranteePRF_DT_IF_
10、SEC_MEDIUMAuthenticationusingUserIDandpasswordandtransportguaranteePRF_DT_IF_SEC_NONoauthorizationandnotransportguaranteePackage/Request勾選LocalObject即可。系統(tǒng)提示W(wǎng)ebService服務(wù)將被創(chuàng)建。3.SOAMANAGER配置服務(wù)SOAMANAGER需要的權(quán)限RoleDescriptionSAP_BC_WEBSERVICE_SERVICE_USERRoleforbackgroundusersoftheWebserviceruntimeSAP_BC_
11、WEBSERVICE_ADMIN_TECRolefortechnicaladministratorofWebservicesMonitoringofsequences,messages,logging,tracing,bgRFC,processintegrationMonitoringofpayloadforcomponentSAP_BASISAdministrationoftracingandlogging,bgRFC,RFCDefinition,execution,andpublicationofWebservicesAdministrationoftheInternetCommunica
12、tionFrameworkAdministrationoftheRFCdestinationAdministrationoftheTaskWatcherandtheEventHandlerSAP_BC_WEBSERVICE_ADMIN_BIZRoleforthebusinessadministratorSAP_BC_WEBSERVICE_CONSUMERUsersofaWebserviceSAP_BC_WEBSERVICE_OBSERVERUserroleforviewingallinformationonWebServicesSAP_BC_WEBSERVICE_DEBUGGERRolewit
13、hdebuggingauthorizationSAP_BC_WEBSERVICE_ADMINAdministrationauthorizationforWebServicesinASABAPoldversion,butstillvalid執(zhí)行T-code:SOAMANAGER,瀏覽器會(huì)打開(kāi)一個(gè)頁(yè)面:HYPERLINKhttp:/hnepcd16:8000/sap/bc/webdynpro/sap/appl_soap_management?sap-language=ENhttp:/hnepcd16:8000/sap/bc/webdynpro/sap/appl_soap_management?sa
14、p-language=EN系統(tǒng)提示無(wú)法打開(kāi)頁(yè)面。這是因?yàn)橹鳈C(jī)名hnepcd16不符合webdynpro的規(guī)范。解決方法一:在C:WINDOWSsystem32driversetc文件中添加映射,講主機(jī)名改成hostname.domain的形式。解決方法二:RZ10添加參數(shù)icm/host_name_full=(hostname).domain。解放方法三:如果主機(jī)加入了域,將地址中的主機(jī)名改成域名。本例中采用第三種方案,打開(kāi)如下地址。HYPERLINK:8000/sap/bc/webdynpro/sap/appl_soap_management?sap-language=EN:8000/sap
15、/bc/webdynpro/sap/appl_soap_management?sap-language=EN系統(tǒng)彈出登錄界面,點(diǎn)擊LogOn,輸入用戶名密碼。選擇BusinessAdministration頁(yè)簽,點(diǎn)擊WebServiceAdministration。Searchby選擇Service,點(diǎn)擊Go。選中剛才創(chuàng)建的服務(wù)名,點(diǎn)擊ApplySelection。在Configurations頁(yè)簽中可以看見(jiàn)該服務(wù)處于Active狀態(tài)。在Overview頁(yè)簽中,點(diǎn)擊OpenWSDLdocumentforselectedbinding。系統(tǒng)會(huì)打開(kāi)一個(gè)頁(yè)面,地址如下:HYPERLINKhttp:/
16、hnepcd16:8000/sap/bc/srt/wsdl/bndg_4A0C6BE061170CE5E10000000ADF0216/wsdl11/allinone/ws_policy/document?sap-client=200http:/hnepcd16:8000/sap/bc/srt/wsdl/bndg_4A0C6BE061170CE5E10000000ADF0216/wsdl11/allinone/ws_policy/document?sap-client=200系統(tǒng)提示無(wú)法打開(kāi)網(wǎng)頁(yè),同樣是因?yàn)橹鳈C(jī)名的原因。將主機(jī)名替換成IP地址。HYPERLINK2:8000/sap/bc/sr
17、t/wsdl/bndg_4A0C6BE061170CE5E10000000ADF0216/wsdl11/allinone/ws_policy/document?sap-client=2002:8000/sap/bc/srt/wsdl/bndg_4A0C6BE061170CE5E10000000ADF0216/wsdl11/allinone/ws_policy/document?sap-client=200現(xiàn)在可以看到服務(wù)說(shuō)明。調(diào)用SAP系統(tǒng)發(fā)布的WebService服務(wù)1.SE80創(chuàng)建代理SE80選擇開(kāi)發(fā)包或者本地對(duì)象右鍵CreateEnterpriseService/WebServicePr
18、oxyObject選擇ServiceConsumer。選擇URL/HTTPDestination。URL中填入SOAMANAGER得到的地址(主機(jī)名換成IP地址)。選擇Package,創(chuàng)建Prefix。系統(tǒng)提示代理將被創(chuàng)建,并提示保存和激活代理。輸入Client,Username和Password。系統(tǒng)提示已經(jīng)創(chuàng)建代理,同時(shí)需要保存和激活。系統(tǒng)顯示代理ZLWSTest的狀態(tài)為NEW(Revised),需要激活。2.LPCONFIG創(chuàng)建LogicalPort執(zhí)行T-code:LPCONFIG,填入ProxyClass和LogicalPort,勾選DefaultPort,點(diǎn)擊生成。輸入Descri
19、ption。在CallParameters頁(yè)簽中填入U(xiǎn)RL,不能采用上面的URL。執(zhí)行T-code:SICF。找到服務(wù)名,路徑為:/default_host/sap/bc/srt/rfc/sap/zlwstest/200/zlwstest/。右鍵單擊服務(wù)明,選擇TestService。系統(tǒng)打開(kāi)頁(yè)面,地址為:HYPERLINKhttp:/hnepcd16:8000/sap/bc/srt/rfc/sap/zlwstest/200/zlwstest/zlwstest?sap-client=200http:/hnepcd16:8000/sap/bc/srt/rfc/sap/zlwstest/200/z
20、lwstest/zlwstest?sap-client=200講主機(jī)名替換為IP地址,這就是我們需要的URL。HYPERLINK2:8000/sap/bc/srt/rfc/sap/zlwstest/200/zlwstest/zlwstest?sap-client=2002:8000/sap/bc/srt/rfc/sap/zlwstest/200/zlwstest/zlwstest?sap-client=200勾選MessageID和StateManagement參數(shù)。保存激活(再次保存之后LogicalPort將處于inactive狀態(tài))。3.測(cè)試代理SE38創(chuàng)建程序Z_WS_TEST測(cè)試接口
21、。代碼如下:REPORTZ_WS_TESTNOSTANDARDPAGEHEADINGMESSAGE-ID00.DATA:*Referencevariablesforproxyandexceptionclasslo_clientproxyTYPEREFTOZWSTEST_CO_ZLWSTEST,lo_sys_exceptionTYPEREFTOcx_ai_system_fault,*Structurestosetandgetmessagecontentls_helloworldTYPEZZHUL_TEST_CHAR20,ls_requestTYPEZWSTEST_ZWS_DEV1,ls_resp
22、onseTYPEZWSTEST_ZWS_DEV1RESPONSE.SELECTION-SCREENBEGINOFBLOCKB1WITHFRAMETITLETEXT-001.PARAMETERS:RAD_ARADIOBUTTONGROUPRAD1DEFAULTX.PARAMETERS:RAD_BRADIOBUTTONGROUPRAD1.PARAMETERS:RAD_CRADIOBUTTONGROUPRAD1.SELECTION-SCREENENDOFBLOCKB1.*SettheinputparameterintotheRequestoftheSOAPObject*CreatetheProxya
23、ndClallit.CREATEOBJECTlo_clientproxy.IFRAD_A=X.ls_request-INPUTDATE=X.ENDIF.IFRAD_B=X.ls_request-INPUTDATE=Y.ENDIF.IFRAD_C=X.ls_request-INPUTDATE=.ENDIF.TRY.CALLMETHODlo_clientproxy-ZWS_DEV1EXPORTINGINPUT=ls_requestIMPORTINGOUTPUT=ls_response.*WriteOuttheBasicInformationls_helloworld=ls_response-OUT
24、PUTDATE.WRITE/1ls_helloworld.CATCHcx_ai_system_faultINTOlo_sys_exception.write:/lo_sys_exception-ERRORTEXT.*ErrorhandlingENDTRY.測(cè)試效果如下:調(diào)用外部異構(gòu)系統(tǒng)發(fā)布的WebService服務(wù)本例:調(diào)用.NET創(chuàng)建WebService服務(wù),URL為:HYPERLINK7:8008/webservice/service1.asmx?WSDL7:8008/webservice/service1.asmx?WSDL1.SE80創(chuàng)建代理SE80選擇開(kāi)發(fā)包或者本地對(duì)象右鍵Creat
25、eEnterpriseService/WebServiceProxyObject選擇ServiceConsumer。選擇URL/HTTPDestination。URL中填入SOAMANAGER得到的地址(主機(jī)名換成IP地址)。選擇Package,創(chuàng)建Prefix。系統(tǒng)提示代理將被創(chuàng)建,并提示保存和激活代理。系統(tǒng)提示已經(jīng)創(chuàng)建代理,同時(shí)需要保存和激活。2.LPCONFIG創(chuàng)建LogicalPort執(zhí)行T-code:LPCONFIG,填入ProxyClass和LogicalPort,勾選DefaultPort,點(diǎn)擊生成。輸入Description。在CallParameters頁(yè)簽中填入U(xiǎn)RL。在O
26、perations頁(yè)簽中填入SOAPAction。在HYPERLINK7:8008/webservice/service1.asmx?WSDL中找到如下代碼7:8008/webservice/service1.asmx?WSDL中找到如下代碼:將”HYPERLINK/HelloWorld/HelloWorld”填入SOAPAction。勾選MessageID和StateManagement參數(shù)。保存激活(再次保存之后LogicalPort將處于inactive狀態(tài))。3.測(cè)試代理SE38創(chuàng)建程序Z_NETWS_TEST測(cè)試接口。代碼如下:REPORTZ_NETWS_TESTNOSTANDARD
27、PAGEHEADINGMESSAGE-ID00.*數(shù)據(jù)定義&DATA:*Referencevariablesforproxyandexceptionclasslo_clientproxyTYPEREFTOZWSNET_CO_SERVICE1SOAP,lo_sys_exceptionTYPEREFTOcx_ai_system_fault,*Structurestosetandgetmessagecontentls_helloworldTYPEZWSNET_HELLO_WORLD_SOAP_OUT-HELLO_WORLD_RESULT,ls_requestTYPEZWSNET_HELLO_WORL
28、D_SOAP_IN,ls_responseTYPEZWSNET_HELLO_WORLD_SOAP_OUT.*SettheinputparameterintotheRequestoftheSOAPObject*CreatetheProxyandClallit.CREATEOBJECTlo_clientproxy.TRY.CALLMETHODlo_clientproxy-HELLO_WORLDEXPORTINGINPUT=ls_requestIMPORTINGOUTPUT=ls_response.*WriteOuttheBasicInformationls_helloworld=ls_respon
29、se-HELLO_WORLD_RESULT.WRITE/1ls_helloworld.CATCHcx_ai_system_faultINTOlo_sys_exception.write:/lo_sys_exception-ERRORTEXT.*ErrorhandlingENDTRY.測(cè)試效果如下:ECC6.0SP14之前版本發(fā)布WebService服務(wù):1.SE37創(chuàng)建Function選擇Remote-EnabledModule。完成Function代碼,包括輸入輸出參數(shù)。2.SE80創(chuàng)建服務(wù)SE80選擇開(kāi)發(fā)包或者本地對(duì)象右鍵CreateEnterpriseService/WebServiceWebService點(diǎn)擊Continue。填入ServiceDefinition和ShortText,EndpointType選擇FUNCFunctionModule。在FunctionModule中填入第一步創(chuàng)建的Function名稱。關(guān)于NameMapping:IftheflagMappingofNamesisset,theexistinglabelsfortheendpointarecopied.Onlythebeginninglettersareuppercaselettersandunderscoresareremoved.一般情
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026天津職業(yè)技術(shù)師范大學(xué)第三批招聘方案(高技能人才崗位)2人備考題庫(kù)帶答案詳解(能力提升)
- 2026中國(guó)日?qǐng)?bào)社及所屬事業(yè)單位招聘國(guó)內(nèi)高校應(yīng)屆畢業(yè)生21人備考題庫(kù)附答案詳解(研優(yōu)卷)
- 2026廣東深圳市寶安區(qū)西鄉(xiāng)桃源居幼兒園(集團(tuán))招聘工作人員7人備考題庫(kù)及答案詳解(基礎(chǔ)+提升)
- 2026廣東廣州市花都區(qū)實(shí)驗(yàn)中學(xué)臨聘教師招聘3人備考題庫(kù)帶答案詳解(研優(yōu)卷)
- 2026春季學(xué)期北京師范大學(xué)萬(wàn)寧實(shí)驗(yàn)學(xué)校市內(nèi)選聘教師19人備考題庫(kù)及參考答案詳解
- 臨床路徑與單病種質(zhì)量控制制度
- 2025初中級(jí)審計(jì)師考試試題及參考答案解析(考生回憶)
- 紫外線空氣消毒制度
- 灌注樁施工方案
- 數(shù)字化轉(zhuǎn)型競(jìng)爭(zhēng)-洞察與解讀
- 2025年食品安全管理員考試題庫(kù)(含標(biāo)準(zhǔn)答案)
- 2025年司法鑒定人資格考試歷年真題試題及答案
- 2026年檢察院書(shū)記員面試題及答案
- CRRT治療單書(shū)寫(xiě)規(guī)范
- 2024年山東省青島市行政職業(yè)能力測(cè)驗(yàn)題庫(kù)a4版
- 2025年初中語(yǔ)文名著閱讀《林海雪原》知識(shí)點(diǎn)總結(jié)及練習(xí)
- T-GXAS 349-2022 核醫(yī)學(xué)科放射性廢水衰變池設(shè)計(jì)技術(shù)規(guī)范
- 開(kāi)題報(bào)告:人工智能時(shí)代中小學(xué)教師角色重構(gòu)研究
- K31作業(yè)現(xiàn)場(chǎng)安全隱患排除(K3)
- 20222023銀行招聘考試題庫(kù)1000題第4372期含答案解析
- 高考政治必修易錯(cuò)易混
評(píng)論
0/150
提交評(píng)論