Local and remote EJB bindings

Decision Server supports dependency injection as well as local and remote EJB3 bindings for the supported application servers.

Dependency injection

Java™ EE containers provide dependency injection. Dependency injection means that you do not have to perform JNDI lookups yourself to get a reference to an EJB from a servlet or from another EJB. You can use the @EJB annotation inside your Java EE-managed components (servlet or EJB) to obtain the references to the bean. See the Java EE specification for details. Because no deployment descriptor is provided in the ejb-jar file for EJB3 rule sessions, default JNDI bindings are used. These bindings are application-server specific.

EJB3 bindings

The following table shows the EJB3 bindings API for the supported application servers:

Table 1. EJB3 bindings API for application servers
Application server Rule session type Local bindings Remote bindings
WebSphere® V8.0 and 8.5 Stateless sessions ejblocal:ilog.rules.res.session.ejb3.IlrStatelessSessionLocal ilog.rules.res.session.impl.ejb3.IlrStatelessSessionRemote
Stateful sessions ejblocal:ilog.rules.res.session.ejb3.IlrStatefulSessionLocal ilog.rules.res.session.ejb3.IlrStatefulSessionRemote
WebLogic 10.x Stateless sessions java:comp/env/IlrStatelessSessionEJB3 IlrStatelessSessionEJB3#ilog.rules.res.session.impl.ejb3.IlrStatelessSessionRemote
Stateful sessions java:comp/env/IlrStatefulSessionEJB3 IlrStatefulSessionEJB3#ilog.rules.res.session.impl.ejb3.IlrStatefulSessionRemote
JBoss 5.0 Stateless sessions
  • IlrStatelessSessionEJB3/local — EJB3.x Default Local Business Interface

  • IlrStatelessSessionEJB3/local-ilog.rules.res.session.impl.ejb3.IlrStatelessSessionLocal — EJB3.x Local Business Interface

  • IlrStatelessSessionEJB3 — EJB3.x Default Remote Business Interface

  • IlrStatelessSessionEJB3/remote-ilog.rules.res.session.impl.ejb3.IlrStatelessSessionRemote — EJB3.x Remote Business Interface

Stateful sessions
  • IlrStatefulSessionEJB3/local — EJB3.x Default Local Business Interface

  • IlrStatefulSessionEJB3/local-ilog.rules.res.session.impl.ejb3.IlrStatefulSessionLocal — EJB3.x Local Business Interface

  • IlrStatefulSessionEJB3 — EJB3.x Default Remote Business Interface

  • IlrStatefulSessionEJB3/remote-ilog.rules.res.session.impl.ejb3.IlrStatefulSessionRemote — EJB3.x Remote Business Interface

For a deployment inside an EAR file, the name of the EAR file is appended before the JNDI name.

For example: MY-EAR/IlrStatelessSessionEJB3/local

Stateless sessions
  • MY-EAR/IlrStatelessSessionEJB3/local — EJB3.x Default Local Business Interface

  • MY-EAR/IlrStatelessSessionEJB3/local-ilog.rules.res.session.impl.ejb3.IlrStatelessSessionLocal — EJB3.x Local Business Interface

  • IlrStatelessSessionEJB3 — EJB3.x Default Remote Business Interface

  • MY-EAR/IlrStatelessSessionEJB3/remote-ilog.rules.res.session.impl.ejb3.IlrStatelessSessionRemote — EJB3.x Remote Business Interface

Stateful sessions
  • MY-EAR/IlrStatefulSessionEJB3/local — EJB3.x Default Local Business Interface

  • MY-EAR/IlrStatefulSessionEJB3/local-ilog.rules.res.session.impl.ejb3.IlrStatefulSessionLocal — EJB3.x Local Business Interface

  • IlrStatefulSessionEJB3 — EJB3.x Default Remote Business Interface

  • IlrStatefulSessionEJB3 — EJB3.x Default Remote Business Interface