SOA Suite for Healthcare integration involves starting up the managed servers, which are in turn, dependent on valid connections to databases. In many low-maintenance environment like Virtualbox images distributed for training and workshops, the database passwords are likely to expire after a certain period. Subsequently, the related SOA startup error becomes a road-block for users not familiar with the database dependencies.
This note describes the step-by-step instructions to resolve the password expiry errors and get the SOA Suite for Healthcare Integration environment back up and running.
The errors seen on startup of SOA server could look like the following:
- Caused by: javax.ejb.CreateException: SDP-25700: An unexpected exception was caught.
- Cause: weblogic.common.resourcepool.ResourceDeadException:
- weblogic.common.ResourceException: Could not create pool connection.
- The DBMS driver exception was: ORA-28001: the password has expired
The error is
caused by the fact that the database passwords in the
image are set to expire after a definite period. To get past the issue, the passwords for the following database users have to be reset:
These users with DEV_ prefix are the default but could vary in other situations, where custom prefixes may have been used during installation of SOA Suite repository.
All the passwords can be set to
the original value, e.g. welcome1 by logging into a SQL*PLus session as a DBA and using the following command
for each database user one at a time :
- SQL> Alter user <username
from above list> identified by welcome1;
The above procedure is applicable to all database users. Alternatively, upon attempts to login to a SQL*Plus session as a database user with expired password, the session itself can prompt for new passwords.
Below, we have the excerpt from a terminal session captured from the Virtualbox image, distributed for SOA Suite for Healthcare Integration training. It shows how the passwords were reset using the approaches mentioned earlier.
[oracle@soahc ~]$ . oraenv
ORACLE_SID = [orcl] ?
The Oracle base for ORACLE_HOME=/u01/DBInstall/product/11.2.0/dbhome_1 is /u01/DBInstall
[oracle@soahc ~]$ sqlplus
SQL*Plus: Release 126.96.36.199.0 Production on Date...
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Enter user-name: system
Enter password: welcome1
ORA-28001: the password has expired
Changing password for system
New password: welcome1
Retype new password: welcome1
Oracle Database 11g Enterprise Edition Release 188.8.131.52.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter user DEV_SOAINFRA identified by welcome1;
SQL> alter user DEV_MDS identified by welcome1;
SQL> alter user DEV_ORASDPM identified by welcome1;
SQL> conn / as sysdba