axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Walsh (JIRA)" <>
Subject [jira] Created: (AXIS2-4753) Make EJBUtil multi-thread aware
Date Fri, 25 Jun 2010 13:23:01 GMT
Make EJBUtil multi-thread aware

                 Key: AXIS2-4753
             Project: Axis2
          Issue Type: Improvement
          Components: databinding
    Affects Versions: 1.5.1
         Environment: WebLogic
            Reporter: William Walsh

We found that we had problems integrating Axis2 with WebLogic in that we couldn't re-use any
of the EJB receiver code apparently because the security established at InitialContext creation
(org.apache.axis2.rpc.receivers.ejb.EJBUtil) was then lost when org.apache.axis2.rpc.receivers.ejb.EJBUtil.EJBClientWorker
invoked its run method in a separate thread for the EJB service, causing a WebLogic security
error invoking the service.  We checked with Oracle and they feel it's most likely that the
separate threads are the cause as WLS doesn't pass/propagate subjects across threads.  Thus
the second thread that does the actual invocation of the service doesn't have the authentication
done in the first thread when the InitialContext is created, which is successfully validated
by our login module.

We coded our own receiver to avoid this additional threading—essentially duplicating the
Axis2 functionality.  I've been told that for EJB environments that threading should not be
 used, leaving it to the container environment to manage.


Had confirmation from Martin Gainty and request to open this JIRA case:
yep the statics of EJBUtil will not work in a multi-threaded environment as seen here
public class EJBUtil {
    public static final java.lang.String EJB_JNDI_NAME = "beanJndiName";

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message