Skip to main content

MarkView Advisor - Setting up multiple JVMs for a single OC4J instance - MarkView Advisor restrictions



Applies To

  • ERP System: ( Oracle, SAP )
  • MarkView Version: (6.x to 9.0 with Advisor)


  • Unable to configure Multiple JVM's in an environment which Advisor is installed

Known Causes

  • OC4J executes on the Java Virtual Machine (JVM) of the standard Java Development Kit (JDK). By default, each OC4J instance uses one JVM. Is is possible to configure an OC4J instance to run on multiple JVMs?

    You can modify the number of JVMs an OC4J instance runs on by modifying the Server Properties page for the OC4J instance. However there are some restrictions.

    The combination of the frameworks, analytics-core, analytics-markview and analytics-actionable modules cannot be in an OC4J group that runs multiple JVMs.

    If you wish to scale up the number of JVMs, you must:
    • Un-deploy the analyics-core, analytics-markview and analytics-actionable modules from the existing OC4J group (i.e. the group that currently contains all of the modules). Do not undeploy the frameworks module from this group.
    • Set up a second OC4J group containing the frameworks, analyics-core, analytics-markview and analytics-actionable modules which will run on only one JVM.


  • Though specific instruction may depend on your OAS version, and your own configuration approach, the following steps have been used to successfully implement the approach detailed above.
    1. Create a new OC4J instance and assign it to a new group
      • Go to Clustered Topology, click on the application server link and click on "Create OC4J instance".
      • Enter the name of the instance (advisor for example) and choose a new group (advisor_group for example)
      • This group should look just like the markview group from the configuration point of view, except that it will run on only 1 JVM, so ensure that you set all server properties to be the same as those in the original group.
      • After you created the advisor group, click on it (on Groups section), go to the Administration tab and click on Server Properties.
      • Set Maximum heap size to 1024m, Initial heap size to 512m
      • Check that under start parameters java options you have -XX:MaxPermSize=128M (If you do not have this option, you will need to add it).
        Note: These memory parameter values are the minimum requirements, you should, however, set them to the same value as those in the original group.
    2. Change the new OAS server.xml file.
      • Open {ORACLE_HOME}/j2ee/advisor/config/server.xml for editing and
      • Under the top-level node application-server, locate the following line: application-directory="../applications"
      • Create a new line and enter the following text: global-jndi-lookup-enabled="true"
    3. Execute the "Configure OAS for Advisor" paragraph of Chapter 1 of the Installation and Configuration Guide.
    4. Create AnalyticsConnectionPool and AnalyticsDataSource.
      • To do this launch the Oracle Enterprise Manager in a web-browser and select the new OC4J server (advisor).
      • Go to Administration, then to JDBC Resources.
      • Under Connection Pool click Create. For name, enter AnalyticsConnectionPool.
      • For JDBC URL, replace the default text : (jdbc:oracle:thin@//localhost:1521/ with information about the database where Advisor is installed. For example: jdbc:oracle:thin@//
      • Enter the advisor DB user information and click TestConnection.
      • Then click Finish. Under Data Source click Create.
      • For name enter AnalyticsDataSource, for JNDI enter jdbc/AnalyticsDataSource and for connection Pool select AnalyticsConnectionPool.
      • Restart opmn after this is done.
    5. Check if you still have the product distribution on your system. If you don't have it, then copy the frameworks.ear, analytics-core.ear, analytics.markview.ear and analytics-actionable.ear from ${ORACLE_HOME}/j2ee/<name of the original oc4j instance>/applications/ into a place from where you can take them when you want to deploy them (step 7)
    6. Un-deploy analytics-core, analytics-markview and analytics-actionable from the OC4J instance you used to install advisor initially.
      • To do this launch the Oracle Enterprise Manager in a web-browser and select the OC4J server where the MarkView Advisor application server was installed.
      • Go to the Applications tab, check analytics-core, analytics-markview and analytics-actionable (do NOT check frameworks) and click un- deploy.
    7. Deploy frameworks, analytics-core, analytics-markview and analytics actionable on the new OC4J you created (advisor here).
      • To do this launch the Oracle Enterprise Manager in a web-browser and select the new OC4J server (advisor).
      • Go to the Applications tab, click deploy and first deploy the frameworks ear file first.
      • After that follow the same steps to deploy analytics-core, analytics-markview and analytics-actionable.
    8. Confirm that the Advisor application is operational.


If/when you are re-deploying analytics-core, it may not picked up from the applications directory of the install directory, but rather form the install distribution.

Because of this, @CordaServerLocation.location@ string from corda web.xml may not be updated to the directory where corda server was installed.

To fix this problem you need to update web.xml from /projects/ias01/product/10.1.3/OracleAS_1/j2ee/MVAS_ADVISOR/applications/analytics-core/corda-war/WEB-INF/web.xml and replace @CordaServerLocation.location@ with /projects/home/oraias01/PROJECTNAME

Then restart opmn.

Keywords: oc4j-instance, jvm