|
Oracle® Containers for J2EE Enterprise JavaBeans Developer's Guide
10g Release 3 (10.1.3) B14428-01 |
|
![]() Previous |
![]() Next |
Using EJB 3.0, you can look up an EJB using resource injection (see "Using Annotations") or the InitialContext (see "Using Inital Context").
Example 19-19 shows how to use annotations and dependency injection to access an EJB 3.0 EJB from an EJB client.
Example 19-19 Injecting an EJB 3.0 EJB in an EJB 3.0 EJB Client
@EJB AdminService bean;
public void privilegedTask()
{
bean.adminTask();
}
Example 19-20 shows how to use annotations and dependency injection to access an EJB 2.1 EJB from an EJB 3.0 EJB client.
This section describes:
Looking Up the Remote Interface of an EJB 3.0 EJB Using ejb-ref
Looking Up the Remote Interface of an EJB 3.0 EJB Using location
Looking up the Local Interface of an EJB 3.0 EJB Using local-ref
Looking up the Local Interface of an EJB 3.0 EJB Using local-location
For more information, see "Configuring the Initial Context Factory".
To look up the remote interface of an EJB using an ejb-ref:
Define an ejb-ref for the EJB in the ejb-jar.xml file.
Example 19-21 ejb-jar.xml For an ejb-ref
<ejb-ref> <ejb-ref-name>ejb/Test</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>Test</local> </ejb-ref>
For more information, see "Configuring an Environment Reference to a Remote EJB").
Determine whether or not a prefix is required (see "Selecting an EJB Reference").
Look up the EJB using the ejb-ref-name and the appropriate prefix (if required).
Example 19-22 Looking Up Using ejb-ref in an EJB 3.0 EJB Client Using Initial Context
InitialContext ic = new InitialContext();
Cart cart = (Cart)ic.lookup("java:comp/env/ejb/Test");
For more information, see "Configuring the Initial Context Factory".
To look up the remote interface of an EJB using its location:
Define the entity-deployment attribute location in the orion-ejb-jar.xml file.
Example 19-23 orion-ejb-jar.xml For location
<entity-deployment name="Test" location="app/Test" ... > ... </entity-deployment>
The default value for location is the value of entity-deployment attribute name.
Determine whether or not a prefix is required (see "Selecting an EJB Reference").
Look up the EJB using the location.
Example 19-24 Looking Up Using location in an EJB 3.0 EJB Client Using Initial Context
InitialContext ic = new InitialContext();
Cart cart = (Cart)ic.lookup("java:comp/env/app/Test");
For more information, see "Configuring the Initial Context Factory".
To look up the remote interface of an EJB using an ejb-local-ref:
Define an ejb-local-ref for the EJB in the ejb-jar.xml file.
Example 19-25 ejb-jar.xml For an ejb-local-ref
<ejb-local-ref> <ejb-ref-name>ejb/Test</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>Test</local> </ejb-local-ref>
For more information, see "Configuring an Environment Reference to a Local EJB").
Determine whether or not a prefix is required (see "Selecting an EJB Reference").
Look up the EJB using the ejb-ref-name and the appropriate prefix (if required).
Example 19-26 Looking Up Using local-ref in an EJB 3.0 EJB Client Using Initial Context
InitialContext ic = new InitialContext();
Cart cart = (Cart)ctx.lookup("java:comp/env/ejb/Test");
For more information, see "Configuring the Initial Context Factory".
To look up the local interface of an EJB using its local-location:
Define the entity-deployment attribute local-location in the orion-ejb-jar.xml file.
Example 19-27 orion-ejb-jar.xml For local-location
<entity-deployment name="Test" local-location="app/Test" ... > ... </entity-deployment>
The default value for location is the value of entity-deployment attribute name.
Determine whether or not a prefix is required (see "Selecting an EJB Reference").
Look up the EJB using the local-location.
Example 19-28 Looking Up Using local-location in an EJB 3.0 EJB Client Using Initial Context
InitialContext ic = new InitialContext();
Cart cart = (Cart)ctx.lookup("java:comp/env/app/Test");
For more information, see "Configuring the Initial Context Factory".