[ http://issues.apache.org/jira/browse/GERONIMO-2510?page=comments#action_12443676 ] David Jencks commented on GERONIMO-2510: ----------------------------------------
I'm not convinced your analysis is correct since I believe this worked before I moved the openejb corba classes into a separate jar. I'll look into it further. > CORBA/RMI delegate code requires delegate implementation to be on the system > classpath > -------------------------------------------------------------------------------------- > > Key: GERONIMO-2510 > URL: http://issues.apache.org/jira/browse/GERONIMO-2510 > Project: Geronimo > Issue Type: Bug > Security Level: public(Regular issues) > Components: CORBA > Reporter: Dain Sundstrom > > When the java.rmi.Util class is loaded, it uses Class.forName to load the > UtilDelegate specified in a system property. This is what yoko uses: > private static UtilDelegate delegate = null; > private static final String defaultDelegate = > "org.apache.yoko.rmi.impl.UtilImpl"; > static { > // Initialize delegate > String delegateName = System.getProperty("javax.rmi.CORBA.UtilClass", > defaultDelegate); > try { > delegate = > (UtilDelegate)Class.forName(delegateName).newInstance(); > } catch (Exception e) { > throw new RuntimeException("Can not create Util delegate: > "+delegateName, e); > } > } > IIRC Class.forName(String) uses the class loader of the class containing the > code, and since java.rmi.Util will always be on the system class path our > delegate must be on the system class path :( > I see a few choices: > * change yoko to use the thread context class loader... then add a gbean to > set the property and load the Util class. repeat of every delegate class. > * write a delegate delegate that allows us to swap out the actual delegate > implementation later > * split out out delegate class into a jar we can put on the system class path -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira