[
https://issues.apache.org/jira/browse/AXIS2-4753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12882829#action_12882829
]
Andreas Veithen commented on AXIS2-4753:
----------------------------------------
Indeed, by executing the lookup code in a different thread, the security
context is lost. Probably this is desired in some use cases, but unfortunately
there is no documentation that explains exactly why this has been coded like
that (the code seems to have been ported from Axis1).
> Make EJBUtil multi-thread aware
> -------------------------------
>
> Key: AXIS2-4753
> URL: https://issues.apache.org/jira/browse/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: [email protected]
For additional commands, e-mail: [email protected]