20150506 Created By BaoXinjian
一、摘要
在Web服务调用的时候,需要有一个应用数据库用户来连接EBS数据库,因此需要创建一个具备一定权限的用户,而为了简化设置的麻烦,
Oracle提供了一个内建的用户 ASADMIN ,只要启用它并重置密码就可以了。
另外一种方法是新建一个用户后进行授权,这种方法需要的步骤稍微多一点,再次就不做描述。
如果ISG的前提设置没有完成,在后面为集成接口 Generate WSDL 的时候就会报出如下的错误:
[fnd.soa.provider.DBConnection.getJDBCConnection]:Error in getting db connection.java.sql.SQLException:
ORA-01017: invalid username/password; logon denied <MSG_TEXT>An error occurred for port: SOAProvider:Provider processor failed to initialize:
oracle.webservices.provider.ProviderException: DbConnectionError: Error in getting db connection.
ORA-01017: invalid username/password; logon denied.</MSG_TEXT>
or
java.sql.SQLException: ORA-20001: The Applications user, ASADMIN is not authorized to access the database.
ORA-06512: at "APPS.APP_EXCEPTION", line 72ORA-06512: at "APPS.FND_SECURITY_PKG", line 522ORA-06512: at line 1
二、锁定统计信息
1. 启用账户ASADMIN,并修改密码,指定相应权限
(1). 修改账户密码
(2). 指定相应的橘色Apps Schema Connect Role
2. 测试用户ASADMIN是否有效,密码是否正确
select fnd_web_sec.validate_login('ASADMIN','welcome') from dual;
3. 在数据库中确定用户ASADMIN拥有角色'UMX|APPS_SCHEMA_CONNECT
select substr(user_name, 1, 30) name, substr(role_name, 1, 30) role
from wf_local_user_roles
where ->user_name='ASADMIN'
如果在user manager中已经付给角色,但是并未显示在数据库表中,请使用以下并发程序更新workflow role
4. 运行TXK deployment Script来安装SOAAppsAdapter如下
$FND_TOP/bin/txkrun.pl -script=CfgOC4JApp -applicationname=pcapps -oracleinternal=Yes -oc4jpass=welcome -runautoconfig=No
5. 运行autoconfig.
$ADMIN_SCRIPTS_HOME/adautocfg.sh
6. 确定以下文件是正确配置data-sources.xml
vi $INST_TOP/ora/10.1.3/j2ee/oafm/application-deployments/default/AppsSOAAdapter/oc4j-ra.xml
查看dataSource Name和xADatasourceName是否有问题
--oc4j-ra.xml that is shipped with pcapps.rar has the below content:
<connector-factory location="eis/Apps/apps1" connector-name="Oracle Applications Adapter">
<config-property name="xADataSourceName" value="jdbc/Apps1DataSource"/>
<config-property name="dataSourceName" value=""/>
<connection-pooling use="none">
</connection-pooling>
<security-config use="none">
</security-config>
</connector-factory>
--But for SOA Provider to work this needs to be manually modified to
<connector-factory location="/eis/apps/adapter" connector-name="Oracle Applications Adapter">
<config-property name="xADataSourceName" value=""/>
<config-property name="dataSourceName" value="jdbc/AppsDs"/>
<connection-pooling use="none">
</connection-pooling>
<security-config use="none">
</security-config>
</connector-factory>
7. 重置ASADMIN和OC4JADMIN在中间服务中配置文件的密码
vi $ORA_CONFIG_HOME/10.1.3/j2ee/oafm/config/system-jazn-data.xml
确定密码是否正确配置,如否,请重置密码
1. 确定oc4jadmin的密码是否要重围为welcome
<user>
<name>oc4jadmin</name>
<display-name>OC4J Administrator</display-name>
<guid>E55B5680462911E5BF5E3320A25D92D0</guid>
<description>OC4J Administrator</description>
<credentials>!welcome</credentials>
</user>
2.确定asadmin的密码是否要重置为welcome
<user>
<name>ASADMIN</name>
<display-name>Default Apps SOA User</display-name>
<guid>E55B7D91462911E5BF5E3320A25D92D0</guid>
<description>Used by SOAProvider for DB connection</description>
<credentials>!welcome</credentials>
</user>
重启oafm container ($ADMIN_SCRIPTS_HOME/adoafmctl.sh)
8. Restart the appsTier.
$ADMIN_SCRIPTS_HOME/adstpall.sh apps/apps
$ADMIN_SCRIPTS_HOME/adstrtal.sh apps/apps
三、删除统计信息
1. 终于跳过错误,可以查收WSDL
2. Deploy WSDL也无问题
Thanks and Regards
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建