Class ModuleJndiNamingStrategy

java.lang.Object
org.wicketstuff.javaee.naming.global.ModuleJndiNamingStrategy
All Implemented Interfaces:
Serializable, IJndiNamingStrategy

public class ModuleJndiNamingStrategy extends Object implements IJndiNamingStrategy
Simple Java EE 6 Global JNDI naming support for java:module prefixed JNDI names based on the EJB 3.1 specification Section 4.4.1.2, page 85
The java:module prefix allows a component executing within a Java EE application to access a module-specific namespace. This strategy can lookup JNDI names only from the current webmodule.
With this you can use JNDI names in the following format:
java:module/<bean-name>[!<fully-qualified-interface-name>]

The moduleName is the name of the module in which the session bean is packaged. In a stand-alone ejb-jar file or .war file, the moduleName defaults to the base name of the module with any filename extension removed. In an ear file, the moduleName defaults to the pathname of the module with any filename extension removed, but with any directory names included. The default moduleName can be overriden using the module-name element of ejb-jar.xml (for ejb-jar files) or web.xml (for .war files).

Author:
Peter Major
See Also:
  • Constructor Details

    • ModuleJndiNamingStrategy

      public ModuleJndiNamingStrategy()
  • Method Details

    • calculateName

      public String calculateName(String ejbName, Class<?> ejbType)
      Calculates the JNDI name based on the given name and type
      Specified by:
      calculateName in interface IJndiNamingStrategy
      Parameters:
      ejbName - The name value for the EJB annotation.
      ejbType - The type of the injectable field.
      Returns:
      The full JNDI name for the given field based on a naming strategy.