My Oracle Support Banner

OC4J MBeans Overwrite Changes That Were Made To opmn.xml Manually (Doc ID 470044.1)

Last updated on FEBRUARY 25, 2019

Applies to:

Oracle Fusion Middleware - Version to [Release AS10gR3]
Oracle Containers for J2EE - Version to [Release AS10gR3]
Information in this document applies to any platform.
Oracle Containers for J2EE - Version: to
This problem can occur on any platform.


When changes are made to the file opmn.xml are done manually (via text editor) OpmnConfig MBean does not recognizes these changes, therefore any changes made through ASC (i.e. system properties) will undo changes that were made manually to opmn.xml previously.

The problem can be seen where there are servers in a clustered environment as follows.

  1. The file opmn.xml is manually modified to add the <topology> elements and issues an opmnctl reload to add it to the cluster, where its discovered and visible in ASC.
  2. Then proceed to ASC and issue the server properties change.
  3. The OpmnConfig MBean on the new node does not yet know about the manual change that was made, thus when the specified server properties change is written out to opmn.xml, it writes out the previous state of the opmn.xml with the new server property -- effectively nuking the added <topology> tags, so that when OPMN is reloaded the new node is dropped from the cluster.

Steps To Reproduce

There are 2 ways shown here that will reproduce the problem:-

Example 1 - Non Clustered Steps (Simple Test)

  1. Start an instance of OAS 10.1.3.X.
  2. Open the file $ORACLE_HOME/opmn/conf/opmn.xml in a text editor, and add any of the following System properties to an OC4J instance, i.e.
    • Verbose: -verbose
    • Verbose GC: -verbose:gc
    • Change default heap size (Max and initial heap size): -Xmx1024m -Xms512m
  3. Log into ASC, go to the Server Properties screen (in Administration) for the instance that changes were made to in previous step.
  4. Add another System property and save it.
  5. Look at opmn.xml and will see the change done in step 2 has been erased.

Example 2 - Clustered Topology Steps

  1. Install (or use) three OAS instances, "red", "black", "blue".
  2. Cluster 2 of the servers by adding something like the following in opmn.xml in each of the 2 servers:
    <discover list="*<IP>:8001"/>
  3. Stop and start both servers:
    opmnctl stopall
    opmnctl startall
  4. Log into ASC to verify both nodes exists.
  5. On the 3rd OAS node, add the <topology> elements to opmn.xml run the following command to add the node same cluster:
    opmnctl reload
  6. View the cluster topology in ASC, you will see all 3 nodes.
  7. In the Groups section select the group 'default_group'.
  8. Select Administration | Server Properties.
  9. Modify any of the properties in the Server Properties screen, i.e. verbose settings, heap size etc and press [Apply].
  10. Will see the following message more opmn is getting updated:
    Server Properties are being updated for all instances in this group
  11. The following error message might appear:
    An error occurred while editing the server properties for one or more instances in the group. Below are the results for each OC4J instance.
    default_group on <HOSTNAME1> OC4J_WebCenter - Succeeded
    default_group on <HOSTNAME1> home - Failed due to error: "ias:type=OpmnConfig,name=<HOSTNAME1>"
    default_group on <HOSTNAME2> OC4J_WebCenter - Succeeded
    default_group on <HOSTNAME2> home - Succeeded
    default_group on <HOSTNAME3> OC4J_WebCenter - Succeeded
    default_group on <HOSTNAME3> home - Succeeded
  12. Press the link 'Cluster Topology'.
  13. Will see that the third OAS instance that was added to the clustered topology no longer appears.
  14. Check the file opmn.xml for the third OAS instance and will see that the <topology> elements erased.


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

In this Document
 Steps To Reproduce
 Example 1 - Non Clustered Steps (Simple Test)
 Example 2 - Clustered Topology Steps
 1. Steps - Stop And Start OracleAS
 2. Steps - Use ASC To Add The Node Into The Cluster

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.