Friday, April 25, 2008

How to change oc4jadmin password for Application Server 10gR3

Scenario:

We have a fresh installation of Oracle Application Server 10gR3 (10.1.3.x). We perform following tasks:

1. Create new OC4J instances
2. Deploy Applications on these instances
3. Change password for oc4jadmin user using setup link in Application server console

Problem:

After performing above tasks, when we try to access any OC4J instances other than HOME, the Application Server will deny the access and gives following error on the screen:

Unable to make a connection to OC4J instance instance_name on Application
Server application_server_name. A common cause for this failure is an
authentication error. The administrator password for each OC4J instance in the
Cluster must be the same as the administrator password for the OC4J instance on
which Application Server Control is running.


Reason:

The administrator password for all OC4J instances in the Cluster must be the same as the administrator password for the OC4J instance on which Application Server Control (by default it is HOME instance) is running.
Changing the password through the Setup link does not change the oc4jadmin password used by any remote OC4J instances. A remote OC4J instance is any OC4J instance in a cluster topology that is not hosting the active Application Server Control.
This means that all the OC4J instances should have same oc4jadmin password.

Solution:

Before changing the oc4jadmin password for HOME instance, we must change the oc4jadmin password for remote instances using the following steps:

1. Click on OC4J instance
2. Click on Administration tab
3. Edit sub-task Security Providers under Security task
4. Edit any application name under Application Level Security
5. Click on Realms tab
6. For realm name - jazn.com, click the value under column Users
7. Click on oc4jadmin under User Name column
8. Provide the old Password for oc4jadmin and new password for oc4jadmin and click Apply

Repeat these steps for all the OC4J instances except HOME instance.
After changing the administrator passwords for all OC4J instances, we can then change the oc4jadmin password for HOME instance using setup link on Application server console.

Now all the oc4jadmin passwords are in sync and the application server will be functioning fine.