SAP SOAMANAGER报错原因与故障排除方法

  一些刚刚接触到SAP Webservice的开发者由于对SAP Netweaver组件的不熟悉,往往在使用事物码SOAMANAGER进行webservice配置的时候,发现无法正常启动SOAMANAGER,本文将对两种常见的报错进行分析和处理,希望对大家有所帮助。

1. 无法访问此页面”:错误代码INET_E_RESOURCE_NOT_FOUND

  原因分析:出现此问题原因是浏览器找不到要访问的地址(即SOAMANAGER所在的URL),找不到要访问的地址,有可能是服务器本身故障了或者网络链接的问题,但如果网络和服务器都正常的话,更大的可能是WEB服务器没有进行被DNS解析到。

  解决办法:让服务器的host被DNS解析。查看服务器的hostname很简单,只需要在刚弹出的IE浏览器的地址栏中的URL(如http://XXXX:8000/...)找到“XXXX”即可,这里的“XXXX”就是服务器的hostname。

  如果SAP服务器本身没有加入到所在工作环境的域控中,那么服务器的hostname默认是无法被解析到的,则需要对服务器的hostname进行解析。常见的host解析办法有两种:集中解析和单机解析。各自的优缺点和办法如下:

  (1) 集中解析

集中解析就是将host解析条目添加到服务器所在网络的DNS服务中,一般需要联系网络管理员来添加这个解析条目。集中解析的优点就是处于该网络环境中的所有客户端主机,只要使用的默认DNS服务器,就可以直接访问发布后的webservice,而不需要在本机上做出任何操作。

  (2) 单机解析

  单机解析就是在客户端电脑上,直接修改本地的host文件,具体操作如下:

依次浏览到这个目录下:<系统盘盘符>:\Windows\System32\drivers\etc,找到下面的一个名为“hosts”不带文件类型后缀的文件,右击这个文件,选择以记事本方式打开该文件,然后在下面的空白区域添加这样一条解析:

    <SAP服务器的IP地址> <SAP的hostname>

  例如: 192.168.1.10 erpdev01。这里的hostname就是我上面提到的“XXXX”,IP地址就更好找了,用户可以在自己的SAP LOGO的配置文件里面看到SAP的IP地址了。添加完成后保存该文件即可正常解析了。要检验配置是否成功,只需要在命令提示符中使用PING命令即可以检测。

  【注意】host解析中的IP地址如果是局域网的虚拟私有IP地址,比如192.XXX.XXX.XXX或者10.XXX.XXX.XXX这种地址,如果开发者出于局域网外,往往还需要登录企业的VPN客户端,解析才能生效。

2. Service cannot be reached”,错误代码:HTTP 403 -FORBIDDEN

  原因分析:当SOAMANAGER报出“The termination occurred in system with error code 403 and for the reason Forbidden.”的错误时,是因为SOAMANAGER的某些服务没有启动导致的。

SAP是通过SOAMANAGER来对外发布指定服务器的,SOAMANAGER本身其实也是一个基于Netweaver的Web Dynpro程序,当你在SAP GUI客户端执行T-Code:SOAMANAGER的时候,就会默认调用IE来打开这个WDA程序,从而实现对webservice的发布的管理。但是根据SAP官方Note1124553的说法,出于安全方面的考虑,SAP Netweaver组件安装后,默认是不激活WDA程序显示服务以及SOAMANAGER服务的,因此,需要手工通过T-Code:SICF来先激活WAD程序显示相关服务以及SOAMANAGER服务,具体需要激活的服务如下:

  ①与显示WDA程序相关的服务

/default_host/sap/bc/webdynpro

(注意:这里只需要激活webdynpro这个服务,不需要激活其下面的子服务。当你右键激活这个服务的时候,其子节点的服务并不会被激活,这点与我们常见的激活逻辑有区别)

/default_host/sap/public/bc

(注意:如果你激活bc下面的子服务,这里的bc服务就会自动激活,不需要再手动激活了,因此这里可以跳过这个服务,直接激活其下面的子节点服务即可)

- /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等所有子节点服务)

  ②与SOAMANAGER相关的服务

- /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.

  解决办法:先确认以上所列服务是否都激活了,如果没有激活,请按照下面图示步骤逐个激活。

在SAP首页执行T-code:SICF,打开服务定义选择界面,在“层次结构类型”中输入“Service”或者通过F4选择出这个值,然后执行,就可以进入服务管理界面,如下图所示:

  在服务管理界面,可以看到上半部分为一个服务查询的界面,可以供用户快速定位到需要的管理的服务上;下半部分为一个树形结构的服务目录,可以通过逐级展开Default host\sap\bc等等,进行服务的查找,如下图所示:

  上半部分通过查找可以快速定位到所需服务,在服务名称里面输入服务的名称,点击“应用”按钮,即可快速定位相应的服务,也可以在下半部分逐级展开目录来定位到相应的服务,如下图所示:

  在这里可以看到被激活过的服务或者目录颜色比较深,而处于待激活状态的服务或者目录呈现灰色。被激活过的对象无法被再激活,只能取消激活。这里我们选择相应的待激活的服务或者子目录(呈现灰色状态),右击-》激活服务-》选择“是”,即可以激活相应的服务或者目录。如下图所示:

  按照上面的步骤依次激活本节开始所列举的那些服务,应该就能顺利打开SOAMANAGER了,如果还不能打开,可以根据弹出的浏览器中提示的错误来找到相应的服务进行激活即可。配置成功后可以在SAP GUI中运行T-code: SOAMANAGER来进行测试。

  在SAP首页运行T-code: SOAMANAGER,回车,会弹出IE浏览器窗口,如果成功的话,会先弹出认证框(与某些电脑的安全设置相关,也有可能先弹出IE安全站点提示信息,这时候只需要展开“详细信息”-》转到网页(不推荐)继续访问即可),输入登录信息后,就可以进入到SOA管理界面了。如下3图所示:

  

  如果上面的服务都已经启动了,仍然提示403错误,则表示还有些SOAMANAGER依赖的服务没有启动,则可以通过显示该页面的URL,从URL中找到相应的服务,然后再按照上面激活服务的办法去激活相应的服务即可。

  在该页面空白处右击-》属性,即可以打开该页面的属性,在属性的地址中,找到URL中问号“?”前的最后一个子节点,即相应的服务。

【版权声明】本文为博主原创文章,转载请在明显位置注明出处。

时间: 2024-12-09 17:12:20

SAP SOAMANAGER报错原因与故障排除方法的相关文章

empty(trim($str))报错原因

最近写程序的时候发现一个这样的问题,一个if判断如下: [php] if (!empty(trim($ch_url))) { ... } [/php] 执行程序报出如下错误: [code] Fatal error: Can't use function return value in write context in ... [/code] 调整为如下形式则不报错误 [php] $ch_url = trim($ch_url); if (!empty($ch_url)) { ... } [/php

Oracle EBS-SQL (MRP-7):检查MRP计划运行报错原因之超大数据查询2.sql

The following scripts can be used to check for huge line numbers: -- PO Requisitions select * from PO_REQUISITION_LINES_ALL where LINE_NUM > 1000000000; -- PO Lines select * from PO_LINES_ALL where LINE_NUM > 1000000000; -- Receiving Supply SELECT *

Apache重启报错原因

#Apache重启报错原因 [[email protected] /]# service httpd restart Stopping httpd:                                            [  OK  ] Starting httpd: httpd: apr_sockaddr_info_get() failed for www.example.com httpd: Could not reliably determine the server's 

VMware报错“原因: 未能锁定文件”,打开失败

原文:http://jingyan.baidu.com/article/425e69e6bf64dbbe15fc16fe.html VMware打开复制的虚拟机,报错"原因: 未能锁定文件",打开失败,可能的原因是复制虚拟机时,被复制的虚拟机未关机或未挂起或未正常关闭,磁盘锁文件未自动删除,下次启动虚拟机时就会弹出上面的那个错误. Vmware为了防止有多虚拟机共用一个虚拟磁盘造成数据的丢失和性能的削弱,每次启动Vmware时会给虚拟磁盘加一个磁盘锁(后缀为.lck的那个文件),对虚拟

今天我的jupyter notebook打不开了,报错原因&#39;No module named &#39;zmq.eventloop&#39;

今天我的jupyter notebook打不开了,就是那种一打开出现黑色界面就退出的那种,惊恐爬上了我的面颊. 找了一个小时,试了好几种办法(包括别人说的什么把属性里面后面的%%的去掉)终究无果 打开anaconda prompt,输入jupyter notebook 立即报错 Traceback (most recent call last): File "e:\anaconda\anaconda2\lib\runpy.py", line 193, in _run_module_as

.NET下载文件报错System.UnauthorizedAccessException的解决方法

转自原文.NET下载文件报错System.UnauthorizedAccessException的解决方法 假设VS代码对应路径为E:\Projects\Web1,在VS用“发布Web”的方式发布后的路径为E:\Site\Web1.在IIS新建2个站点,站点A指向E:\Projects\Web1,站点B指向E:\Site\Web1. 现在出现一个异常情况,站点B能正常下载123.xls,站点A下载时却提示错误: System.UnauthorizedAccessException: 对路径“E:

网络不通故障排除方法

1.ifconfig 检测eth0配置是否正确.网卡是否启动,关注inet_addr的IP地址 2.ethtool eth0  检测物理链路是否接通 3.ping 192.168.60.1 ping网关确定内网是否通畅,ping 192.168.40.1 ping外网确定网关设置是否正确 4.route 检测网关数据接收是否正常 总结如下:eth0只是网卡的一个名称,有的时候如果是网桥或者绑定模式下,会出现br0或者bond0的名字,都是一样的,只是把相应的eth0修改为br0或者bond0即可

git提交是报错没有change-id的解决方法

git提交是报错没有change-id的解决方法: 1.先仔细查看报错内容,查出是哪天提交记录缺少change-id 2.如果是最近的一条缺少,则直接执行git commit --amend "提交信息",以对上次提交的内容进行修改: 如果是前面几条都缺少change-id,则先 git reset --soft ****ddfd(恢复到最近一次有change-id的提交记录),重新提交$ git commit -am "提交信息" 重新提交修改记录 3.执行git

eclipse robovm插件报错原因及解决方法

在eclipse上安装robovm插件经常会报错. 大多数时候是由于没有使用JDK7的原因,很多时候由于mac os中自带的jdk6干扰,即使在mac中设置了JAVA_HOME为JDK7的路径robovm插件也不好用,这时候就需要在eclipse启动时指定jdk7的java.exe来启动eclipse本身.操作过程如下: 1:切换到eclipse路径下. 2:执行命令:./eclipse -vm /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/