webservice 接口报404错误问题小结

1 背景介绍

生产环境有两台应用服务器(RAC),EBS版本是12.1.3,服务器操作系统版本linux

节点一:10.192.80.87

节点二:10.192.80.88

20180512(周六) 凌晨停应用和数据库服务器,然后更换网络设备(交换机),凌晨四点重启数据库和应用服务器

2 问题描述:

1)EBS系统对接的外围系统的webservice接口无法正常访问,以HR凭证接口为例,报错信息如下:

[18-5-14 20:11:21:408 CST] 000427cd SystemErr     R AxisFault
 faultCode: {http://xml.apache.org/axis/}HTTP
 faultSubcode: 
 faultString: (404)Not Found
 faultActor: 
 faultNode: 
 faultDetail: 
	{}:return code:  404
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>404 Not Found</TITLE>
</HEAD><BODY>
<H1>Not Found</H1>
The requested URL /webservices/SOAProvider/plsql/cux_hr_inter_pkg/ was not found on this server.<P>
</BODY></HTML>

	{http://xml.apache.org/axis/}HttpErrorCode:404

2)直接访问EBS提供的webservice接口URL:http://ebs.cic.inter:8000/webservices/SOAProvider/plsql/cux_hr_inter_pkg/,发现

奇怪的现象,有时候报错有时候不报错,通过网线连接公司内网报错,通过wifi上网测试不报错

报错信息:No WebService Provider is registered at this URL 

正常显示:

由于应用服务器是双节点的,访问ebs.cic.inter后通过F5(负载均衡) 实现随机访问某个节点,所以将上面的webservice接口URL中的域名改成IP,重试

发现访问节点一:http://10.192.80.87:8000/webservices/SOAProvider/plsql/cux_hr_inter_pkg/,正常;

访问节点二:http://10.192.80.88:8000/webservices/SOAProvider/plsql/cux_hr_inter_pkg/,报错;

3)adadmin用户登录EBS,发现报错信息:

服务供应商访问权限不可用。您可能无法查看完整的服务信息。有关详情,请查看服务供应商日志

备注:这个问题一般是webserver没有成功生成WSDL或者生成了但是没有部署成功

4)重新生成WSDL并部署

由于是多节点环境,Oracle推荐使用后台脚本生成和部署WS。这是因为在多节点环境,如果通过UI生成一个Service,我们可能不知道到底是哪个节点的服务生成了,

我们需要每个节点进行检查才知道。因此采用后台针对每一个节点生成和部署WS。

具体参考文档:“Oracle实践之EBS Integrated SOA Gateway实施指南_modify by renjun.doc”的  “5.3   ISG多节点Web Service生成和部署

a 生成WS

cd $FND_TOP/bin

soagenerate.sh irepname=CUX_HR_INTER_PKG logfile=/tmp/cux_ws_gen.log

这边节点一能够正常使用,只是节点二SOA有问题,所以将节点一生成的

直接访问WSDL网址:

http://ebs.cic.inter:8000/webservices/SOAProvider/plsql/cux_hr_inter_pkg/?wsdl

报错信息:

5.3   ISG多节点Web Service生成和部署

猜你喜欢

转载自www.cnblogs.com/hand-lzs/p/9045269.html