Details
-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
Undefined
-
---
-
---
Description
The current app-client quickstart uses a single ear for both server side and client side, this did not make sense as it means the EJBs are also deployed to the client process even though the client process is invoking remote EJBs exclusively.
I have attempted some refactoring to make the quickstart clearer so users can see the server side requirement and the client side requirement:
https://github.com/darranl/wildfly-quickstart/tree/WFLY-14027
The problem is starting app-client now fails with this error:
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYEJB0406: No EJB found with interface of type 'org.jboss.as.quickstarts.appclient.server.api.StatelessSession' for binding org.jboss.as.quickstarts.appclient.acc.client.Main/slsb at org.jboss.as.ejb3.deployment.processors.EjbInjectionSource.getResourceValue(EjbInjectionSource.java:90) at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.addJndiBinding(ModuleJndiBindingProcessor.java:271) at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor$1.handle(ModuleJndiBindingProcessor.java:242) at org.jboss.as.ee.component.ClassDescriptionTraversal.run(ClassDescriptionTraversal.java:54) at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.processClassConfigurations(ModuleJndiBindingProcessor.java:246) at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.deploy(ModuleJndiBindingProcessor.java:160) at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:182) [wildfly-server-14.0.0.Beta1.jar:14.0.0.Beta1] ... 8 more
This feels as though the injection should either be a proxy which has not yet connected to the remote process or should connect to the remote process first to identify the available beans.
The reason for delayed connection may be to enable authentication before the application uses the EJBs but deploying server side components on the client doesn't feel like the correct solution.