[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