IBM Support

Connection pooling in MCF8.0 : jdbcService.OraclePool.datasource : javax.naming.NameNotFoundException: Unable to resolve

Troubleshooting


Problem

Connection pooling in MCF8.0 : jdbcService.OraclePool.datasource : javax.naming.NameNotFoundException: Unable to resolve

Symptom

After following the steps mentioned below to create a data source in MCF 8.0 an error is thrown

1)Create a data source in weblogic
2) Set -Dvendor=weblogic in the startWeblogic startup script
3)Edit customer_overrides.properties file to include the below mentioned property

jdbcService.OraclePool.datasource =<datasource_name>

4) Rebuild the ear so that the changes made in customer_overrides.properties are reflected in the EAR.
5) Restart the Application Server.

Error Message

<Errors>
    <Error
        ErrorDescription="com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCConnectionException" ErrorRelatedMoreInfo="">
        <Attribute Name="ErrorCode" Value="com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCConnectionException"/>
        <Attribute Name="ErrorDescription" Value="com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCConnectionException"/>
        <Error
            ErrorDescription="" ErrorRelatedMoreInfo="javax.naming.NameNotFoundException: Unable to resolve 'oraclePool'. Resolved ''; remaining name 'oraclePool'">
            <Stack>com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCConnectionException: javax.naming.NameNotFoundException: Unable to resolve 'oraclePool'. Resolved ''; remaining name 'oraclePool'
 at com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCService.getConnection(JDBCService.java:839)
 at com.sterlingcommerce.woodstock.util.frame.jdbc.JDBCService.getConnection(JDBCService.java:637)
 at com.yantra.interop.util.TransactionWrapper.getConnection(TransactionWrapper.java:73)
 at com.yantra.ycp.core.YCPContext.createConnection(YCPContext.java:810)
 at com.yantra.ycp.core.YCPContext.initializeConnection(YCPContext.java:327)
 at com.yantra.ycp.core.YCPContext.getConnection(YCPContext.java:156)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.createStatement(YFCEntityDBHome.java:1446)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.createStatementForList(YFCEntityDBHome.java:1453)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.listEntitiesWithSelectPS(YFCEntityDBHome.java:1881)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.listEntitiesWithWhereClausePS(YFCEntityDBHome.java:1863)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.listEntitiesWithWhereClausePS(YFCEntityDBHome.java:1843)
 at com.yantra.yfc.dblayer.YFCEntityDBHome.listEntitiesWithWhereClause(YFCEntityDBHome.java:1833)
 at com.yantra.shared.dbclasses.YFS_LocaleDBHome.listWithWhere(YFS_LocaleDBHome.java:107)
 at com.yantra.shared.dbclasses.YFS_LocaleDBHome.listWithWhere(YFS_LocaleDBHome.java:99)
 at com.yantra.shared.dbclasses.YFS_LocaleDBHome.listWithWhere(YFS_LocaleDBHome.java:82)
 at com.yantra.yfs.core.YFSSystem.loadLocales(YFSSystem.java:155)
 at com.yantra.yfs.core.YFSSystem.init(YFSSystem.java:73)
 at com.yantra.yfs.core.YFSSystem.<clinit>(YFSSystem.java:47)
 at java.lang.J9VMInternals.initializeImpl(Native Method)
 at java.lang.J9VMInternals.initialize(J9VMInternals.java:187)
 at java.lang.Class.forNameImpl(Native Method)
 at java.lang.Class.forName(Class.java:127)
 at com.yantra.appserver.ServletInitializer.init(ServletInitializer.java:30)
 at javax.servlet.GenericServlet.init(GenericServlet.java:256)
 at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:278)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
 at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
 at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
 at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
 at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:507)
 at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1715)
 at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1692)
 at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1612)
 at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2750)
 at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:889)
 at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:333)
 at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
 at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
 at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
 at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
 at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
 at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
 at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
 at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
 at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
 at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
 at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
 at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
 at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
 at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
 at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:181)
 at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:358)
 at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:52)
 at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:186)
 at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
 at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
 at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
 at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
 at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
 at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
 at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
</Stack>
        </Error>

Resolving The Problem

This is a documentation defect. The following points should be kept in mind:

(1) jdbcService.oraclePool.datasource  is the correct property. Note that the "o" in the word oraclePool is in small letters. The property name is case sensitive, so please make sure the same is
entered.

(2) Though in the documentation the property is specified for Websphere, it should be added in the customer_overrides.properties for all application servers.

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

NFX6704

Product Synonym

[<p><b>]Escalation ID[</b><p>];74687;[<p><b>]Fix ID[</b><p>];MCSF 8.5 Installation Guide;[<p><b>]Severity[</b><p>];Normal;[<p><b>]Type[</b><p>];NormalFix

Document Information

Modified date:
16 June 2018

UID

swg21555580