Search This Blog

Wednesday, October 5, 2011

Manged Server Fails to start due to OracleAppsAdapter initialization error

Applies to:
Oracle SOA Platform - Version: 11.1.1.5.0 and later [Release: 11gR1 and later ]
Information in this document applies to any platform.

Symptoms:
After AppsAdapter.rar was deployed on soa_server1 the 'OracleAppsAdapter' does not go into the Active State.


The below error are generated in the soa_server1.log file:
class 'oracle.tip.adapter.apps.IAppsConnection' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/IDBConnection
[2] The ra.xml class 'oracle.tip.adapter.apps.AppsConnection' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBConnection
[3] The ra.xml class 'oracle.tip.adapter.apps.AppsManagedConnectionFactory' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBManagedConnectionFactory
[4] The ra.xml class 'oracle.tip.adapter.apps.AppsConnectionFactory' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBConnectionFactory.
weblogic.application.ModuleException: [1] The ra.xml class 'oracle.tip.adapter.apps.IAppsConnection' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/IDBConnection
[2] The ra.xml class 'oracle.tip.adapter.apps.AppsConnection' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBConnection
[3] The ra.xml class 'oracle.tip.adapter.apps.AppsManagedConnectionFactory' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBManagedConnectionFactory
[4] The ra.xml class 'oracle.tip.adapter.apps.AppsConnectionFactory' could not be loaded from the resource adapter archive/application because of the following error: java.lang.NoClassDefFoundError: oracle/tip/adapter/db/DBConnectionFactory
at weblogic.connector.deploy.ConnectorModule.prepare(ConnectorModule.java:230)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:518)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:159)
Truncated. see log file for complete stacktrace

Changes :
The 'OracleAppsAdapter' was deleted from the WebLogic Administration Server Console.

Cause :
The 'DBAdapter' has a higher deployment order than 'OracleAppsAdapter'.
In order for 'OracleAppsAdapter' to be deployed successfully (go into the Active State) it needs 'DBAdapter' to be already deployed.

Solution :
Ensure that the DBAdapter has a lower deployment order than OracleAppsAdapter.

1. Login into the WebLogic Administration Console
2. Go to Deployments
3. Delete existing adapter 'OracleAppsAdapter'
4. Restart admin server and managed servers.
5. Login into the WebLogic Administration Console
6. Go to Deployments
7. Click on 'DbAdapter'
8. Go to the Overview tab
9. Verify and note the value for the "Deployment Order" parameter
10. Go back to Deployments
11. Re-create 'OracleAppsAdapter' from '/FMW_HOME/Oracle_SOA1/soa/connectors/AppsAdapter.rar' with the default settings.
12. Update 'OracleAppsAdapter' Adapter with deployment order higher than the 'DBAdapter'
13. Save the changes
14. Go back to Deployments
15. Perform Action 'Start' for 'OracleAppsAdapter'

2 comments:

  1. Hi Moshe,

    I hope you can add face to my name...

    I am implementing EBS OTM Integration and suddently my technical vendor has LEFT. So I am trying to understand SOA(I am totally new to this) and manage for the time being.. Here are couple of issues I am facing and I am
    cluless where to start

    1. From e-Business to integrate to OTM, we run a Oracle Apps concurrent program,
    Shipping Outbound Interface program and we get the following error
    AuthenticateTicket_ptt::AuthenticateTicket(InputParameters,OutputParameters) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: BINDING.JCA-12510 JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element The JCA Binding Component is unable to startup the Resource Adapter specified in the element: location='eis/DB/EBSQA'.

    The above JNDI eis/DB/EBSQA does not exist under Services -> DataSources -> JNDI

    2. Also noticed DBAdapter status is Failed in SOA11g. On trying to stop and start, I get the following error.
    and on Starting we get the error-> java.lang.NoClassDefFoundError: Could not initialize class oracle.tip.adapter.db.DBManagedConnectionFactory

    Please note it is the DBAdapter, I see your blog on AppsAdapter.. So not sure it is ordering which caused the program

    I tried to create a new DBAdapter and continue to get the same error

    3. So I tried to restart the SOA server. I got to Managed Server -> controls -> Stop and then Start
    But now it fails to start, as it says it is unable to reach Node Manager

    4. I navigate to Console -> Environment -> Machines -> Machine1(Node manager) -> check status to see it inactive..
    Do you think restarting node manager as follows helps
    WL_HOME\server\bin\startNodeManager.sh
    Why should node manager ever go down? If I do a weblogic restart, will the node manager come up... Just curious to know..

    Any Solution/ide/directions would be of greatest help.
    Thanks,
    Shobana

    ReplyDelete
  2. Hey Shobana,

    How are you doing? Thanks for writing.

    Please find my comments below:

    1. From e-Business to integrate to OTM, we run a Oracle Apps concurrent program (Comments Inline)

    As first step:

    a) Check whether the connection factory JNDI in the code ,matches with the connection factory that you have created
    b) Check the OA Adapter connecion factory
    c) Check the availabiliy of the datasource which is connected from this connection factory (This should be XA Datasource)

    2. Also noticed DBAdapter status is Failed in SOA11g. (Comments Inline)

    For this issue.

    a) Stop the DB Adapter
    b) Go to your Deployment plan path
    c) Remove the exisitng deployment plan (Keep a backup of this)
    d) Create a new (.plan file)
    e) Update the DB Adapter.
    f) Use the option (Redeploy this application using the following deployment files)
    g) Also ensure the deployment order of DB Adapter is lesser than the Oracle Apps Adapter
    h) Either start the DB Adapter again or go for a clean bounce of managed servers.

    Let me know if the outcome of these steps.

    3. So I tried to restart the SOA server. I got to Managed Server -> controls -> Stop and then Start (Comments Inline)
    But now it fails to start, as it says it is unable to reach Node Manager (Comments Inline)

    Bounce the admin server.Then start the managed servers from console.



    4)Why should node manager ever go down? If I do a weblogic restart, will the node manager come up..(Comments Inline)

    Node manager can go down for several reasons. It can get into warning modes for several ideal reasons.
    Choke the memory and cause the node managers not to respond.
    As a temporary workaround you can start the servers from startScripts.

    Regards,
    Moshe.S

    ReplyDelete