[
http://jira.jboss.com/jira/browse/JBAS-4805?page=comments#action_12381769 ]
Galder Zamarreno commented on JBAS-4805:
----------------------------------------
This issue has a secondary side effect where SessionContext.lookup() calls within
the bean that had the Resource injected also throws a
javax.naming.CommunicationException.
InitialContextFactory.getHAContext():
Hashtable env = ctx.getEnvironment(); // this is the Container's getEnc();
...
env.put(Context.PROVIDER_URL, "localhost:" + getHaJndiPort());
This call changes the EJB container's Context.PROVIDER_URL, so SessionContext.lookup
calls after this are gonna try to go localhost first. If they fail, they'll try do a
new InitIalContext()
which will probably succeed (it did in my tests)
InitialContextFactory.getHAContext() should not use hardcoded
localhost for lookup
----------------------------------------------------------------------------------
Key: JBAS-4805
URL:
http://jira.jboss.com/jira/browse/JBAS-4805
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: EJB3
Affects Versions: JBossAS-4.2.1.GA, JBossAS-5.0.0.Beta2
Reporter: Galder Zamarreno
Assigned To: William DeCoste
org.jboss.ejb3.InitialContextFactory.getHAContext() contains:
env.put(Context.PROVIDER_URL, "localhost:" + getHaJndiPort());
InitialContext haCtx = new InitialContext(env);
The code should not have hardcoded localhost because as soon as someone binds JBoss
to something different, a localhost lookup will fail.
This could should instead check HAJNDI service's BindAddress attribute and use that.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira