-
Bug
-
Resolution: Done
-
Major
-
JBossAS-3.2.8.SP1, JBossAS-4.0.5.CR1
-
None
The following code in org.jboss.ejb.Container
doesn't work if the caller doesn't have a context classloader,
e.g. it is using the bootstrap classloader as its classloader on the Sun JDK
ClassLoader callerClassLoader = SecurityActions.getContextClassLoader();
long start = System.currentTimeMillis();
Method m = null;
boolean setCl = false;
Object type = null;
String contextID = getJaccContextID();
try
{
if (!callerClassLoader.equals(classLoader)) // !!! callerClassLoader is null !!!
The classloaders should be reversed, since the ejb classloader can never be null.
Is there a reason for this optimization? I'd imagine the comparison of classloaders
is likely to be more expensive that just setting the TCL in some cases????