• Find us:
    +1 415 655 1723   |   +91-844-844-8901
  • Free Newsletter

     
     

  • Archive

  • Categories


  • Solution for – Failed to initialize the application ‘opss-DBDS’ in WebLogic Server

    Posted by "" in "OAAM, WebLogic" on 2014-06-14

     

    Recently I came across the following error during the startup of Oracle Adaptive Access Manager Server which prevented the server from starting up:

    [EL Severe]: 2014-06-12 16:26:48.788–ServerSession(888474799)–Exception [EclipseLink-4002] (Eclipse Persistence Services – 2.3.1.v20111018-r10243): org.eclipse.persistence.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: ORA-28001: the password has expired
    Error Code: 28001
    <Jun 12, 2014 4:26:48 PM IST> <Error> <Deployer> <BEA-149205> <Failed to initialize the application ‘opss-DBDS’ due to error weblogic.application.ModuleException: .
    weblogic.application.ModuleException:
            at weblogic.jdbc.module.JDBCModule.prepare(JDBCModule.java:327)
            at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
            at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:517)
            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
    Caused By: weblogic.common.ResourceException: weblogic.common.ResourceException: Could not create pool connection. The DBMS driver exception was: ORA-28001: the password has expired
            at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:283)
            at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1310)
            at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1227)
            at weblogic.common.resourcepool.ResourcePoolImpl.start(ResourcePoolImpl.java:250)
            at weblogic.jdbc.common.internal.ConnectionPool.doStart(ConnectionPool.java:1329)
            Truncated. see log file for complete stacktrace
    >
    [EL Severe]: 2014-06-12 16:26:48.876–ServerSession(888474799)–Exception [EclipseLink-4002] (Eclipse Persistence Services – 2.3.1.v20111018-r10243): org.eclipse.persistence.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: ORA-28001: the password has expired

     


    You can easily figure out from the above exception that the server is not starting because password of some database user is expired. However, there is no mention of which users’ password we should check. I will walk you through the steps to find out the database user whose password is expired.

    In the above stacktrace, you can see the name of the data source name is ‘opss-DBDS’ (derived from the line – <Jun 12, 2014 4:26:48 PM IST> <Error> <Deployer> <BEA-149205> <Failed to initialize the application ‘opss-DBDS’ due to error weblogic.application.ModuleException: .weblogic.application.ModuleException). All the datasource related information in WebLogic server can be found in Data Sources link in the Administration Console or in <DOMAIN_HOME>/config/jdbc/ and <DOMAIN_HOME>/config/config.xml. Since the server is not starting up, there is no question of checking the data source information through the Administration console. So we will use the domain directory files to solve this problem.

    1. Check the file – <DOMAIN_HOME>/config/config.xml. Find jdbc-system-resource entry with the name opss-DBDS. The entry will look something like this:

    <jdbc-system-resource>

    <name>opss-DBDS</name>

    <target>AdminServer,oaam_admin_server1</target>

    <descriptor-file-name>jdbc/opss-jdbc.xml</descriptor-file-name>

    </jdbc-system-resource>

    The target will vary depending on the servers which you are using. descriptor-file-name tag gives the relative location of the file in which the data source information is stored.

      1. Evaluate the relative location and you will find the file is located at <DOMAIN_HOME>/config/jdbc/opss-jdbc.xml. Open this file and check the entries under tag <jdbc-driver-params>. Here you will find the name of the database user whose password needs to be renewed.

     

    <name>opss-jdbc</name>

    <jdbc-driver-params>

    <url>jdbc:oracle:thin:@localhost:1521/orcl</url>

    <driver-name>oracle.jdbc.OracleDriver</driver-name>

    <properties>

    <property>

    <name>user</name>

    <value>DEV_OPSS</value>

    </property>

    </properties>

    <password-encrypted>{AES}cZP0gaAGDSDQYIMsaasASDF/+RHadvaAS8saASDGFGZMY</password-encrypted>

    </jdbc-driver-params>

    1. Now you have the name of the database user – DEV_OPSS. Login to sqlplus / as sysdba and execute the below command to renew the password:

    alter user DEV_OPSS identified by <PASSWORD>;

    Now once the password of the user is restored, you will be able to start the server. I hope this post will be helpful to many as the password for the database user account expires automatically in 180 days if the default password policy is in place.

     

    Leave a Reply

    Your email address will not be published. Required fields are marked *



  • K21 Technologies is among the most experienced Oracle Gold Partner for Identity Access Management service providers. We work with application development companies and in-house technology division to help achieve significant returns on their IT security investment. Our clientele includes some of the globally renowned corporate, which speaks of our expertise in our field.

    We have the most talented and experienced team that can swiftly deploy security solutions even in complex IT ecosystem. Our clients highly appreciate our timely implementation, interactive training, on-demand support and community resources.
  • CONTACTS

    K21 Technologies
    128 Uxbridge Road, Hatchend,,
    London, HA5 4DS

    US: +1 415 655 1723
    India: +91-844-844-8901

  • Copyright 2019, K21 Technologies. All rights reserved
  • TOP
    TOP