[jboss-jira] [JBoss JIRA] Commented: (EJBTHREE-1455) EJB References are getting mapped to Business Default Proxy, not Interface-Specific

Andrew Lee Rubinger (JIRA) jira-events at lists.jboss.org
Mon Aug 11 14:46:00 EDT 2008


    [ https://jira.jboss.org/jira/browse/EJBTHREE-1455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12424488#action_12424488 ] 

Andrew Lee Rubinger commented on EJBTHREE-1455:
-----------------------------------------------

Closer look, correct value is passed in resolveEjbAnnotationRefs, but resolveEjbLocalRefs is not looking for interface-specific bind values.  Should be:

String localInterface = ref.getLocal();
String localJndiName = target.getBeanMetaData().determineResolvedJndiName(localInterface);

> EJB References are getting mapped to Business Default Proxy, not Interface-Specific
> -----------------------------------------------------------------------------------
>
>                 Key: EJBTHREE-1455
>                 URL: https://jira.jboss.org/jira/browse/EJBTHREE-1455
>             Project: EJB 3.0
>          Issue Type: Bug
>          Components: core
>            Reporter: Andrew Lee Rubinger
>            Assignee: Andrew Lee Rubinger
>
> From EJBRemoteHandler:
> protected void ejbRefXml(AbstractEJBReferenceMetaData ref, String interfaceName, InjectionContainer container, String errorType)
>    {
>       String encName = "env/" + ref.getEjbRefName();
>       InjectionUtil.injectionTarget(encName, ref, container, container.getEncInjections());
>       if (container.getEncInjectors().containsKey(encName))
>          return;
>       String mappedName = ref.getMappedName();
>       if (mappedName != null && mappedName.equals(""))
>          mappedName = null;
>       if(mappedName == null && ref.getResolvedJndiName() != null)
>          mappedName = ref.getResolvedJndiName();
> .....
> }
> mappedName becomes "stateless_sessioncontext_descriptor/SessionContextBean/local", when in JNDI this does not have the requisite interface-specific information associated with it:
> +- stateful_sessioncontext_descriptor (class: org.jnp.interfaces.NamingContext)
>   |   +- SessionContextBean (class: org.jnp.interfaces.NamingContext)
>   |   |   +- local (class: Proxy for: com.sun.ts.tests.ejb30.common.sessioncontext.ThreeLocal2IF, com.sun.ts.tests.ejb30.common.sessioncontext.ThreeLocal1IF)
>   |   |   +- local-com.sun.ts.tests.ejb30.common.sessioncontext.ThreeLocal2IF (class: Proxy for: com.sun.ts.tests.ejb30.common.sessioncontext.ThreeLocal2IF)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list