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";
can you file a JIRA request to make EJBUtil multi-thread aware?
https://issues.apache.org/jira/browse/AXIS2
This is an important discovery for those of us who desire to ensure Axis2 code
is fully operational for all webapp containers
Thanks William!
Martin Gainty
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger
sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung
oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem
Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung.
Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung
fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le
destinataire prévu, nous te demandons avec bonté que pour satisfaire informez
l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est
interdite. Ce message sert à l'information seulement et n'aura pas n'importe
quel effet légalement obligatoire. Étant donné que les email peuvent facilement
être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité
pour le contenu fourni.
From: [email protected]
To: [email protected]
Date: Fri, 25 Jun 2010 00:11:05 +0100
Subject: Question on EJB receiver code and WebLogic
Hi,
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; but was wondering if this is possibly a
bug or if I’m misunderstanding something on the Axis2 side? I’ve been told
that for EJB environments that threading should not be used, leaving it to the
container environment to manage.
Thanks,
William
The information in this email is confidential and may be legally privileged.
It is intended solely for the addressee. Access to this email by anyone else
is unauthorized. If you are not the intended recipient, any disclosure,
copying, distribution or any action taken or omitted to be taken in reliance
on it, is prohibited and may be unlawful. If you are not the intended
addressee please contact the sender and dispose of this e-mail. Thank you.
_________________________________________________________________
The New Busy is not the too busy. Combine all your e-mail accounts with Hotmail.
http://www.windowslive.com/campaign/thenewbusy?tile=multiaccount&ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_4