SAP SOAMANAGER报错原因与故障排除方法
一些剛剛接觸到SAP?Webservice的開發(fā)者由于對SAP?Netweaver組件的不熟悉,往往在使用事物碼SOAMANAGER進(jìn)行webservice配置的時候,發(fā)現(xiàn)無法正常啟動SOAMANAGER,本文將對兩種常見的報錯進(jìn)行分析和處理,希望對大家有所幫助。
1.?“無法訪問此頁面”:錯誤代碼INET_E_RESOURCE_NOT_FOUND
?
原因分析:出現(xiàn)此問題原因是瀏覽器找不到要訪問的地址(即SOAMANAGER所在的URL),找不到要訪問的地址,有可能是服務(wù)器本身故障了或者網(wǎng)絡(luò)鏈接的問題,但如果網(wǎng)絡(luò)和服務(wù)器都正常的話,更大的可能是WEB服務(wù)器沒有進(jìn)行被DNS解析到。
解決辦法:讓服務(wù)器的host被DNS解析。查看服務(wù)器的hostname很簡單,只需要在剛彈出的IE瀏覽器的地址欄中的URL(如http://XXXX:8000/...)找到“XXXX”即可,這里的“XXXX”就是服務(wù)器的hostname。
如果SAP服務(wù)器本身沒有加入到所在工作環(huán)境的域控中,那么服務(wù)器的hostname默認(rèn)是無法被解析到的,則需要對服務(wù)器的hostname進(jìn)行解析。常見的host解析辦法有兩種:集中解析和單機(jī)解析。各自的優(yōu)缺點和辦法如下:
(1)?集中解析
集中解析就是將host解析條目添加到服務(wù)器所在網(wǎng)絡(luò)的DNS服務(wù)中,一般需要聯(lián)系網(wǎng)絡(luò)管理員來添加這個解析條目。集中解析的優(yōu)點就是處于該網(wǎng)絡(luò)環(huán)境中的所有客戶端主機(jī),只要使用的默認(rèn)DNS服務(wù)器,就可以直接訪問發(fā)布后的webservice,而不需要在本機(jī)上做出任何操作。
(2)?單機(jī)解析
單機(jī)解析就是在客戶端電腦上,直接修改本地的host文件,具體操作如下:
依次瀏覽到這個目錄下:<系統(tǒng)盤盤符>:\Windows\System32\drivers\etc,找到下面的一個名為“hosts”不帶文件類型后綴的文件,右擊這個文件,選擇以記事本方式打開該文件,然后在下面的空白區(qū)域添加這樣一條解析:
<SAP服務(wù)器的IP地址>?<SAP的hostname>
例如:?192.168.1.10?erpdev01。這里的hostname就是我上面提到的“XXXX”,IP地址就更好找了,用戶可以在自己的SAP?LOGO的配置文件里面看到SAP的IP地址了。添加完成后保存該文件即可正常解析了。要檢驗配置是否成功,只需要在命令提示符中使用PING命令即可以檢測。
【注意】host解析中的IP地址如果是局域網(wǎng)的虛擬私有IP地址,比如192.XXX.XXX.XXX或者10.XXX.XXX.XXX這種地址,如果開發(fā)者出于局域網(wǎng)外,往往還需要登錄企業(yè)的VPN客戶端,解析才能生效。
?
?
2.?“Service?cannot?be?reached”,錯誤代碼:HTTP?403?-FORBIDDEN
?
原因分析:當(dāng)SOAMANAGER報出“The?termination?occurred?in?system?with?error?code?403?and?for?the?reason?Forbidden.”的錯誤時,是因為SOAMANAGER的某些服務(wù)沒有啟動導(dǎo)致的。
SAP是通過SOAMANAGER來對外發(fā)布指定服務(wù)器的,SOAMANAGER本身其實也是一個基于Netweaver的Web?Dynpro程序,當(dāng)你在SAP?GUI客戶端執(zhí)行T-Code:SOAMANAGER的時候,就會默認(rèn)調(diào)用IE來打開這個WDA程序,從而實現(xiàn)對webservice的發(fā)布的管理。但是根據(jù)SAP官方Note1124553的說法,出于安全方面的考慮,SAP?Netweaver組件安裝后,默認(rèn)是不激活WDA程序顯示服務(wù)以及SOAMANAGER服務(wù)的,因此,需要手工通過T-Code:SICF來先激活WAD程序顯示相關(guān)服務(wù)以及SOAMANAGER服務(wù),具體需要激活的服務(wù)如下:
①與顯示W(wǎng)DA程序相關(guān)的服務(wù)
/default_host/sap/bc/webdynpro
(注意:這里只需要激活webdynpro這個服務(wù),不需要激活其下面的子服務(wù)。當(dāng)你右鍵激活這個服務(wù)的時候,其子節(jié)點的服務(wù)并不會被激活,這點與我們常見的激活邏輯有區(qū)別)
/default_host/sap/public/bc
(注意:如果你激活bc下面的子服務(wù),這里的bc服務(wù)就會自動激活,不需要再手動激活了,因此這里可以跳過這個服務(wù),直接激活其下面的子節(jié)點服務(wù)即可)
-?/default_host/sap/public/bc/ur
-?/default_host/sap/public/bc/icons
-?/default_host/sap/public/bc/icons_rtl
-?/default_host/sap/public/bc/webicons
-?/default_host/sap/public/bc/pictograms
-?/default_host/sap/public/bc/webdynpro/*?(ssr,?mimes等所有子節(jié)點服務(wù))
②與SOAMANAGER相關(guān)的服務(wù)
-?/default_host/sap/bc/soap?
-?/default_host/sap/bc/srt
-?/default_host/sap/bc/srt/rfc/sap
-?/default_host/sap/bc/webdynpro/sap?
-?/default_host/sap/bc/webdynpro/sap/appl_soap_management.
解決辦法:先確認(rèn)以上所列服務(wù)是否都激活了,如果沒有激活,請按照下面圖示步驟逐個激活。
在SAP首頁執(zhí)行T-code:SICF,打開服務(wù)定義選擇界面,在“層次結(jié)構(gòu)類型”中輸入“Service”或者通過F4選擇出這個值,然后執(zhí)行,就可以進(jìn)入服務(wù)管理界面,如下圖所示:
?
在服務(wù)管理界面,可以看到上半部分為一個服務(wù)查詢的界面,可以供用戶快速定位到需要的管理的服務(wù)上;下半部分為一個樹形結(jié)構(gòu)的服務(wù)目錄,可以通過逐級展開Default?host\sap\bc等等,進(jìn)行服務(wù)的查找,如下圖所示:
?
上半部分通過查找可以快速定位到所需服務(wù),在服務(wù)名稱里面輸入服務(wù)的名稱,點擊“應(yīng)用”按鈕,即可快速定位相應(yīng)的服務(wù),也可以在下半部分逐級展開目錄來定位到相應(yīng)的服務(wù),如下圖所示:
?
在這里可以看到被激活過的服務(wù)或者目錄顏色比較深,而處于待激活狀態(tài)的服務(wù)或者目錄呈現(xiàn)灰色。被激活過的對象無法被再激活,只能取消激活。這里我們選擇相應(yīng)的待激活的服務(wù)或者子目錄(呈現(xiàn)灰色狀態(tài)),右擊-》激活服務(wù)-》選擇“是”,即可以激活相應(yīng)的服務(wù)或者目錄。如下圖所示:
?
按照上面的步驟依次激活本節(jié)開始所列舉的那些服務(wù),應(yīng)該就能順利打開SOAMANAGER了,如果還不能打開,可以根據(jù)彈出的瀏覽器中提示的錯誤來找到相應(yīng)的服務(wù)進(jìn)行激活即可。配置成功后可以在SAP?GUI中運行T-code:?SOAMANAGER來進(jìn)行測試。
在SAP首頁運行T-code:?SOAMANAGER,回車,會彈出IE瀏覽器窗口,如果成功的話,會先彈出認(rèn)證框(與某些電腦的安全設(shè)置相關(guān),也有可能先彈出IE安全站點提示信息,這時候只需要展開“詳細(xì)信息”-》轉(zhuǎn)到網(wǎng)頁(不推薦)繼續(xù)訪問即可),輸入登錄信息后,就可以進(jìn)入到SOA管理界面了。如下3圖所示:
?
?
如果上面的服務(wù)都已經(jīng)啟動了,仍然提示403錯誤,則表示還有些SOAMANAGER依賴的服務(wù)沒有啟動,則可以通過顯示該頁面的URL,從URL中找到相應(yīng)的服務(wù),然后再按照上面激活服務(wù)的辦法去激活相應(yīng)的服務(wù)即可。
?
在該頁面空白處右擊-》屬性,即可以打開該頁面的屬性,在屬性的地址中,找到URL中問號“?”前的最后一個子節(jié)點,即相應(yīng)的服務(wù)。
總結(jié)
以上是生活随笔為你收集整理的SAP SOAMANAGER报错原因与故障排除方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BAPI创建预留
- 下一篇: PHP调用wsdl文件类型的接口代码分享