javax.ejb.embeddable

## Class EJBContainer

- java.lang.Object
- - javax.ejb.embeddable.EJBContainer

- All Implemented Interfaces:
    AutoCloseable

      public abstract class EJBContainer
      extends Object
      implements AutoCloseable

  Used to execute an EJB application in an embeddable container.
  Since:
    EJB 3.1

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `APP_NAME` Standard property name for specifying the application name of the EJB modules executing within the embeddable container.
    `static String` | `MODULES` Standard property name for specifying the set of modules to be initialized.
    `static String` | `PROVIDER` Standard property name for specifying the embeddable container implementation bootstrap class.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EJBContainer()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `close()` Shutdown an embeddable EJBContainer instance.
    `static EJBContainer` | `createEJBContainer()` Create and initialize an embeddable EJB container.
    `static EJBContainer` | `createEJBContainer(Map<?,?> properties)` Create and initialize an embeddable EJB container with a set of configuration properties.
    `abstract Context` | `getContext()` Retrieve a naming context for looking up references to session beans executing in the embeddable container.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### PROVIDER

          public static final String PROVIDER

      Standard property name for specifying the embeddable container implementation bootstrap class. Property value is a fully-qualified class name.
      See Also:
        Constant Field Values

    - #### MODULES

          public static final String MODULES

      Standard property name for specifying the set of modules to be initialized. Property value is one of the following :
      - a single module name String from the JVM classpath
      - a String[] array of module names from the JVM classpath
      - a java.io.File representing an ejb-jar or exploded ejb-jar directory
      - a java.io.File array, each element of which represents an ejb-jar or exploded ejb-jar directory
      See Also:
        Constant Field Values

    - #### APP_NAME

          public static final String APP_NAME

      Standard property name for specifying the application name of the EJB modules executing within the embeddable container. If specified, the property value applies to the `<app-name>` portion of the portable global JNDI name syntax. If this property is not specified, the `<app-name>` portion of the portable global JNDI name syntax does not apply.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EJBContainer

          public EJBContainer()

  - ### Method Detail

    - #### createEJBContainer

          public static EJBContainer createEJBContainer()

      Create and initialize an embeddable EJB container. JVM classpath is searched for all ejb-jars or exploded ejb-jars in directory format.
      Returns:
        EJBContainer instance
      Throws:
        `EJBException` - Thrown if the container or application could not be successfully initialized.

    - #### createEJBContainer

          public static EJBContainer createEJBContainer(Map<?,?> properties)

      Create and initialize an embeddable EJB container with a set of configuration properties.
      Parameters:
        `properties` - Spec-defined and/or vendor-specific properties. The spec reserves the prefix `"javax.ejb."` for spec-defined properties.
      Returns:
        EJBContainer instance
      Throws:
        `EJBException` - Thrown if the container or application could not be successfully initialized.

    - #### getContext

          public abstract Context getContext()

      Retrieve a naming context for looking up references to session beans executing in the embeddable container.
      Returns:
        naming context

    - #### close

          public abstract void close()

      Shutdown an embeddable EJBContainer instance. Embeddable applications should always call `close()` in order to free up the resources associated with the embeddable container.
      Specified by:
        `close` in interface `AutoCloseable`

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.