[jboss-jira] [JBoss JIRA] (WFLY-11848) EJB WFLYEJB0473: JNDI bindings for ... ejb: is not correct when there is not an appName

Chao Wang (Jira) issues at jboss.org
Thu Mar 14 01:29:00 EDT 2019


     [ https://issues.jboss.org/browse/WFLY-11848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chao Wang updated WFLY-11848:
-----------------------------
    Component/s: EJB


> EJB WFLYEJB0473: JNDI bindings for ... ejb: is not correct when there is not an appName
> ---------------------------------------------------------------------------------------
>
>                 Key: WFLY-11848
>                 URL: https://issues.jboss.org/browse/WFLY-11848
>             Project: WildFly
>          Issue Type: Bug
>          Components: EJB
>    Affects Versions: 16.0.0.Final
>            Reporter: Chao Wang
>            Assignee: Chao Wang
>            Priority: Major
>
> EJB WFLYEJB0473: JNDI bindings for ... ejb: is not correct when there is not an appName
> EAP 7.2 is logging the ejb: JNDI binding 'ejb:ejb-client/Hello!com.jboss.examples.ejb.Hello' which can be used by remote clients, but when the deployment is not an ear there is not an an AppName/ModuleName.
> the format is: ejb: appName / moduleName / distinctName / EJBName!EJBInterface
> For a deployment ejb-client.jar, the EJB it seeing appName == moduleName == ejb-client.  But the way it has worked is if there is no sub deployment, then the appName is considered "", making the lookup: ejb:/ejb-client/Hello!com.jboss.examples.ejb.Hello
> If the ejb-client.jar was packaged in app.ear, then the lookup would be ejb:app/ejb-client/Hello!com.jboss.examples.ejb.Hello
> So all of that to say, there should be a / in the binding name when there is not an appName (ie not in an ear or not a subdeployment).
> {code}
>   @Resource(lookup = "java:app/AppName")
>   private String appName;
>   @Resource(lookup = "java:module/ModuleName")
>   private String moduleName;
> {code}
>  
> https://docs.jboss.org/author/display/WFLY/EJB+invocations+from+a+remote+server+instance
> {code}
> INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-5) WFLYEJB0473: JNDI bindings for session bean named 'Hello' in deployment unit 'deployment "ejb-client.jar"' are as follows:
> 	java:global/ejb-client/Hello!com.jboss.examples.ejb.Hello
> 	java:app/ejb-client/Hello!com.jboss.examples.ejb.Hello
> 	java:module/Hello!com.jboss.examples.ejb.Hello
> 	java:jboss/exported/ejb-client/Hello!com.jboss.examples.ejb.Hello
> 	ejb:ejb-client/Hello!com.jboss.examples.ejb.Hello
> 	java:global/ejb-client/Hello
> 	java:app/ejb-client/Hello
> 	java:module/Hello
> {code}
> org.jboss.as.ejb3.deployment.processors.EjbJndiBindingsDeploymentUnitProcessor
> {code}
>             // log EJB's ejb:/ namespace binding
>             final String ejbNamespaceBindingName = sessionBean.isStateful() ? ejbNamespaceBindingBaseName + "!" + viewClassName + "?stateful" : ejbNamespaceBindingBaseName + "!" + viewClassName;
>             logBinding(jndiBindingsLogMessage, ejbNamespaceBindingName);
> {code}



--
This message was sent by Atlassian Jira
(v7.12.1#712002)



More information about the jboss-jira mailing list