I’ve been trying to invoke a remote EJB from within my process. Scenario is as follows :
1-Build project 1 including Entities, DAOs, exposed as remote EJBs (to be used by numerous applications). Interface as @Remote annotation, and implementation has @Stateless and @Named annotations.
2-Prepare a “process” war deployment only containing the model, processes.xml, EJB, and CDI maven dependencies, with reference to a DAO in project 1.
Whenever I invoke the process, I get the following :
Cannot resolve identifier ‘notificationsDAO’
at org.camunda.bpm.engine.impl.juel.AstIdentifier.eval(AstIdentifier.java:83)
at org.camunda.bpm.engine.impl.juel.AstMethod.invoke(AstMethod.java:79)
at org.camunda.bpm.engine.impl.juel.AstMethod.eval(AstMethod.java:75)
at org.camunda.bpm.engine.impl.juel.AstEval.eval(AstEval.java:50)
at org.camunda.bpm.engine.impl.juel.AstNode.getValue(AstNode.java:26)
at org.camunda.bpm.engine.impl.juel.TreeValueExpression.getValue(TreeValueExpression.java:114)
at org.camunda.bpm.engine.impl.delegate.ExpressionGetInvocation.invoke(ExpressionGetInvocation.java:36)
at org.camunda.bpm.engine.impl.delegate.DelegateInvocation.proceed(DelegateInvocation.java:54)
at org.camunda.bpm.engine.impl.delegate.DefaultDelegateInterceptor.handleInvocationInContext(DefaultDelegateInterceptor.java:87)
at org.camunda.bpm.engine.impl.delegate.DefaultDelegateInterceptor.handleInvocation(DefaultDelegateInterceptor.java:59)
at org.camunda.bpm.engine.impl.el.JuelExpression.getValue(JuelExpression.java:55)
… 286 more
@aakhmerov
If you need the full projects, let me know how I can provide you with them, if you don’t want to work with any unknowns to replicate the scenario.
ideally you would publish code in github repository, possibly private and provide me the access to it. My username on github is the same.
The next step that I would do is to replace your DAO for now with a delegate available in your project with process definition and try to inject dao into the delegate with @Inject annotation.
yes. In general you have to verify that DAO is getting exposed as named resource properly. May be you can also increase logging level of application server to log named resources registered.