Archive for July 2013
Lengthy errormessage while creating OID
For most of the Fusion Middleware domains or systems components I setup for clients I use scripts. Today, while creating a OID, I decided to type in the commands manually. This resulted in the following:
$ /u01/app/oracle/admin/instances/XXXXX/oid_instance_XXXXXXXX/bin/opmnctl createcomponent -componentType OID -componentName area51_oid -Db_info rdbms-scan.area51.local:1521:srv4oid -Host oid.area51.local -Port 3060 -Sport 3131 Command requires login to weblogic admin server (oid.area51.local): Username: weblogic Password: Creating empty component directories...Done Provisioning OID files for area51_oid OID onCreate.... Enter ODS password: Validating OID input parameters Enter ODSSM password: oracle.as.config.ProvisionException: Error deleting credential odssm from CSF at oracle.iam.management.oid.install.wls.OIDComponentHelper.delCredFromCSF(OIDComponentHelper.java:2373) at oracle.iam.management.oid.install.wls.OIDComponentHelper.removeCreds(OIDComponentHelper.java:2345) at oracle.iam.management.oid.install.wls.OIDComponent.onRemove(OIDComponent.java:429) at oracle.as.config.impl.OracleASComponentBaseImpl.remove(OracleASComponentBaseImpl.java:287) at oracle.as.config.impl.OracleASComponentBaseImpl.remove(OracleASComponentBaseImpl.java:174) at oracle.as.config.impl.OracleASComponentBaseImpl.remove(OracleASComponentBaseImpl.java:155) at oracle.iam.management.oid.install.wls.OIDComponent.onCreate(OIDComponent.java:227) at oracle.as.config.impl.OracleASComponentBaseImpl.createComponent(OracleASComponentBaseImpl.java:597) at oracle.as.config.impl.OracleASComponentBaseImpl.create(OracleASComponentBaseImpl.java:106) at oracle.as.config.provisioner.commands.CreateComponentCommand.execute(CreateComponentCommand.java:40) at oracle.as.config.provisioner.InstallerCmdLine.run(InstallerCmdLine.java:146) at oracle.as.config.provisioner.InstallerCmdLine.main(InstallerCmdLine.java:46) Caused by: java.security.PrivilegedActionException: oracle.as.config.ProvisionException: at java.security.AccessController.doPrivileged(Native Method) at oracle.iam.management.oid.install.wls.OIDComponentHelper.delCredFromCSF(OIDComponentHelper.java:2354) ... 11 more Caused by: oracle.as.config.ProvisionException: at oracle.iam.management.oid.install.wls.OIDComponentHelper$3.run(OIDComponentHelper.java:2367) ... 13 more Caused by: oracle.security.jps.config.JpsConfigurationException: /u01/app/oracle/admin/instances/eoid2/oid_instance_oesv9510/config/JPS/jps-config-jse.xml (No such file or directory) at oracle.security.jps.internal.config.xml.XmlConfigurationFactory.initDefaultConfiguration(XmlConfigurationFactory.java:439) at oracle.security.jps.internal.config.xml.XmlConfigurationFactory.getDefaultConfiguration(XmlConfigurationFactory.java:338) at oracle.security.jps.internal.config.xml.XmlConfigurationFactory.getConfiguration(XmlConfigurationFactory.java:160) at oracle.security.jps.internal.core.runtime.JpsContextFactoryImpl.(JpsContextFactoryImpl.java:112) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at java.lang.Class.newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:308) at oracle.security.jps.util.JpsUtil.newInstance(JpsUtil.java:190) at oracle.security.jps.JpsContextFactory$1.run(JpsContextFactory.java:74) at oracle.security.jps.JpsContextFactory$1.run(JpsContextFactory.java:72) at java.security.AccessController.doPrivileged(Native Method) at oracle.security.jps.JpsContextFactory.getContextFactory(JpsContextFactory.java:71) at oracle.iam.management.oid.install.wls.OIDComponentHelper$3.run(OIDComponentHelper.java:2357) ... 13 more Caused by: java.io.FileNotFoundException: /u01/app/oracle/admin/instances/eoid2/oid_instance_oesv9510/config/JPS/jps-config-jse.xml (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(FileInputStream.java:120) at oracle.security.jps.internal.common.util.XmlSchemaValidationUtil.doValidation(XmlSchemaValidationUtil.java:96) at oracle.security.jps.internal.config.xml.XmlConfigurationFactory.initDefaultConfiguration(XmlConfigurationFactory.java:418) ... 28 more Skipping oesv9510_oid unregistration. It is not currently registered with the adminserver. Deleting oesv9510_oid directories Invoking opmn reload...Done Command failed: Exception in onCreate() Details are logged in /u01/app/oracle/admin/instances/eoid2/oid_instance_oesv9510/diagnostics/logs/OPMN/opmn/provision.log opmnctl createcomponent: failed.
Now this is a rather lengthy error message and it really surprised me. Since I just associated the security store for the domain to a database, and this error pointing towards JPS-config I figured something must be wrong with the reassociateSecurityStore wlst comamnd. So I checked logfiles, My Oracle Support and Google before I checked the provision.log.
The provision log showed me these messages
SEVERE: Command failed: oracle.as.config.ProvisionException: Exception in onCreate() at oracle.iam.management.oid.install.wls.OIDComponent.onCreate(OIDComponent.java:235) at oracle.as.config.impl.OracleASComponentBaseImpl.createComponent(OracleASComponentBaseImpl.java:597) at oracle.as.config.impl.OracleASComponentBaseImpl.create(OracleASComponentBaseImpl.java:106) at oracle.as.config.provisioner.commands.CreateComponentCommand.execute(CreateComponentCommand.java:40) at oracle.as.config.provisioner.InstallerCmdLine.run(InstallerCmdLine.java:146) at oracle.as.config.provisioner.InstallerCmdLine.main(InstallerCmdLine.java:46) Caused by: oracle.as.config.ProvisionException: -Namespace parameter missing at oracle.iam.management.oid.install.wls.OIDComponentHelper.validateParams(OIDComponentHelper.java:314) at oracle.iam.management.oid.install.wls.OIDComponent.onCreate(OIDComponent.java:158) ... 5 more
Aha. So that was a enormous error message that tried to tell me “Hey, you missed the -Namespace parameter”.
P.S. 11.1.1.7 also introduced a new process called oiddispd. documentation” gives this description:
“Beginning with Oracle Internet Directory 11g Release 1 (11.1.1.7.0), the OIDLDAPD process is separated as the OIDDISPD (dispatcher) process and the OIDLDAPD (server) process. On UNIX and Linux systems, however, the ps -ef command will continue to show both of these processes as OIDLDAPD at runtime.”
If you happen to separate software from configuration like I do (binaries owned by oracle, oid processes run as some other user) you need to chown the $ORACLE_HOME/bin/oiddispd process and chmod it to 4740
Hope this helps.