IBM Support

What is the algorithm used in finding the vendorFile JVM system property for the application server and agent servers?  (MCF 8.0)

Question & Answer


Question

What is the algorithm used in finding the vendorFile JVM system property for the application server and agent servers?  (MCF 8.0)

Answer

The application server and agent servers require a JVM system property called vendorFile, which points to a servers.properties file, e.g. -DvendorFile=/path/to/servers.properties

The servers.properties file, in turn, gives the locations of various properties required by MCF, e.g. yfs.properties, jdbc.properties. sandbox.cfg, customer_overrides.properties, etc.

The algorithm used for finding the vendorFile in the application server and agent server is the same. The algorithm is as follows:

       
  1. If the vendorFile exists in the file system at the given path, then the vendorFile is taken from the file system, and all of the property files referenced by servers.properties are also taken from the file system. For example, if you have defined -DvendorFile=/sterling/8.0/Foundation/properties/servers.properties, and that file exists, then that will be the servers.properties file used. In addition, all of the properties files in servers.properties will also come from their respective locations in the file system, as defined in servers.properties. If you have defined -DvendorFile=/servers.properties, and servers.properties happens to exist in the root directory '/', then that's the servers.properties file that will be used.
       
       
  2.    
  3. If the vendorFile is not found in the file system location defined, then the system looks for the vendorFile in the classpath. And, in turn, the system will look in the classpath for all of the properties files defined in servers.properties. For example, in a typical application ear deployment, you will define -DvendorFile=/servers.properties (and servers.properties will NOT be available in the root directory '/'). The system will then look for the vendorFile in the classpath, i.e. in the ear file. In yantra.ear, you will have a properties.jar file which contains servers.properties. They system will find servers.properties there. Once servers.properties is found in the classpath (in the ear), then the system will also look in the classpath for all of the properties files defined in servers.properties by their base file names, e.g. yfs.properties or jdbc.properties or sandbox.cfg without any directory path.
       
       
  4.    
  5. If the vendorFile is not found in the file system, and you have servers.properties somewhere in your server classpath, i.e. in your WebLogic or WebSphere or JBoss classpath, then that servers.properties will be used. The server classpath will override the classpath of the application ear.




[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

FAQ2590

Document Information

Modified date:
16 June 2018

UID

swg21519837