Overview
Wiki Markup |
---|
{snippet:url=openejb3/examples/injection-of-ejbs/README.txt} |
The Code
In this example we develop two simple session stateless beans (DataReader and DataStore), and show how we can use the @EJB annotation in one of these beans to get the reference to the other session bean
DataStore session bean
Local business interface
Wiki Markup |
---|
{snippet:id=code|url=openejb3/examples/injection-of-ejbs/src/main/java/org/superbiz/injection/DataStoreLocal.java|lang=java} |
Remote business interface
Wiki Markup |
---|
{snippet:id=code|url=openejb3/examples/injection-of-ejbs/src/main/java/org/superbiz/injection/DataStoreRemote.java|lang=java} |
Bean
Wiki Markup |
---|
{snippet:id=code|url=openejb3/examples/injection-of-ejbs/src/main/java/org/superbiz/injection/DataStoreImpl.java|lang=java} |
DataReader session bean
Local business interface
Wiki Markup |
---|
{snippet:id=code|url=openejb3/examples/injection-of-ejbs/src/main/java/org/superbiz/injection/DataReaderLocal.java|lang=java} |
Bean
Wiki Markup |
---|
{snippet:id=code|url=openejb3/examples/injection-of-ejbs/src/main/java/org/superbiz/injection/DataReaderImpl.java|lang=java} |
...
Tip |
---|
|
You can use the @EJB annotation to refer a session bean in other components specified by the Java EE platform, for instance: - Servlets
- ServletContextListeners
- Servlet Filters
- JSF managed beans
- EJB interceptors
- JAX-WS service endpoints
|
Writing a unit test for the example
Writing an unit test for this example is quite simple. We need just to write a setup method to create and initialize the InitialContext, and then write our test methods
setUp
Wiki Markup |
---|
{snippet:id=setup|url=openejb3/examples/injection-of-ejbs/src/test/java/org/superbiz/injection/EjbDependencyTest.java|lang=java} |
Test
Wiki Markup |
---|
{snippet:id=test|url=openejb3/examples/injection-of-ejbs/src/test/java/org/superbiz/injection/EjbDependencyTest.java|lang=java} |
Running
Running the example is fairly simple, just run:
...