--- old/src/java.corba/share/classes/org/omg/CORBA/ORB.java Mon Feb 6 20:36:57 2017 +++ new/src/java.corba/share/classes/org/omg/CORBA/ORB.java Mon Feb 6 20:36:57 2017 @@ -173,6 +173,12 @@ * * When a per-application ORB is created via the 2-arg init methods, * then it will be located using the thread context class loader. + * + * The IDL to Java Language OMG specification documents the ${java.home}/lib directory as the location, + * in the Java run-time image, to search for orb.properties. + * This location is not intended for user editable configuration files. + * Therefore, the implementation first checks the ${java.home}/conf directory for orb.properties, + * and thereafter the ${java.home}/lib directory. * * @since JDK1.2 */ @@ -271,14 +277,25 @@ } String javaHome = System.getProperty("java.home"); - fileName = javaHome + File.separator - + "lib" + File.separator + "orb.properties"; - props = getFileProperties( fileName ) ; + fileName = javaHome + File.separator + "conf" + + File.separator + "orb.properties"; + props = getFileProperties(fileName); + + if (props != null) { + String value = props.getProperty(name); + if (value != null) + return value; + } + + fileName = javaHome + File.separator + "lib" + + File.separator + "orb.properties"; + props = getFileProperties(fileName); + if (props == null) - return null ; + return null; else - return props.getProperty( name ) ; + return props.getProperty(name); } } );