Java Reference
In-Depth Information
EJBContainer ec = EJBContainer.createEJBContainer();
...
ec.close();
While clients are not required to shut down
EJBContainer
instances, doing so frees
resources consumed by the embedded container. This is particularly important when the
virtual machine under which the client application is running has a longer lifetime than
the client application.
The
standalone
Example Application
The
standalone
example application demonstrates how to create an instance of the
embedded enterprise bean container in a JUnit test class and call a session bean business
method. Testing the business methods of an enterprise bean in a unit test allows developers
to exercise the business logic of an application separately from the other application lay-
ers, such as the presentation layer, and without having to deploy the application to a Java
EE server.
The
standalone
example has two main components:
StandaloneBean
, a stateless
session bean, and
StandaloneBeanTest
, a JUnit test class that acts as a client to
StandaloneBean
using the embedded container.
StandaloneBean
is a simple session bean exposing a local, no-interface view with a
single business method,
returnMessage
, which returns “Greetings!” as a
String
.
@Stateless
public class StandaloneBean {
private static final String message = "Greetings!";
public String returnMessage() {
return message;
}
}
StandaloneBeanTest
calls
StandaloneBean.returnMessage
and tests that
the returned message is correct. First, an embedded container instance and initial context
are created within the
setUp
method, which is annotated with
org.junit.Before
to
indicate that the method should be executed before the test methods.