Provides automated EJB JAR file creation.
Extends the
MatchingTask class provided in the default ant distribution to provide a
directory scanning EJB jarfile generator.
The task works by taking the deployment descriptors one at a time and
parsing them to locate the names of the classes which should be placed in
the jar. The classnames are translated to java.io.Files by replacing
periods with File.separatorChar and resolving the generated filename as a
relative path under the srcDir attribute. All necessary files are then
assembled into a jarfile. One jarfile is constructed for each deployment
descriptor found.
addDeploymentTool
protected void addDeploymentTool(EJBDeploymentTool deploymentTool)
Add a deployment tool to the list of deployment tools that will be
processed
deploymentTool
- a deployment tool instance to which descriptors
will be passed for processing.
createBorland
public BorlandDeploymentTool createBorland()
Adds a deployment tool for Borland server.
- the deployment tool instance to be configured.
createClasspath
public Path createClasspath()
Adds to the classpath used to locate the super classes and
interfaces of the classes that will make up the EJB JAR.
- the path to be configured.
createDTD
public EjbJar.DTDLocation createDTD()
Create a DTD location record. This stores the location of a DTD. The
DTD is identified by its public Id. The location may either be a file
location or a resource location.
- the DTD location object to be configured by Ant
createIplanet
public IPlanetDeploymentTool createIplanet()
Adds a deployment tool for iPlanet Application Server.
- the deployment tool instance to be configured.
createJboss
public JbossDeploymentTool createJboss()
Adds a deployment tool for JBoss server.
- the deployment tool instance to be configured.
createJonas
public JonasDeploymentTool createJonas()
Adds a deployment tool for JOnAS server.
- the deployment tool instance to be configured.
createSupport
public FileSet createSupport()
Adds a fileset for support elements.
- a fileset which can be populated with support files.
createWeblogic
public WeblogicDeploymentTool createWeblogic()
Adds a deployment tool for Weblogic server.
- the deployment tool instance to be configured.
createWeblogictoplink
public WeblogicTOPLinkDeploymentTool createWeblogictoplink()
Adds a deployment tool for Weblogic when using the Toplink
Object-Relational mapping.
- the deployment tool instance to be configured.
createWebsphere
public WebsphereDeploymentTool createWebsphere()
Adds a deployment tool for Websphere 4.0 server.
- the deployment tool instance to be configured.
execute
public void execute()
throws BuildException
Invoked by Ant after the task is prepared, when it is ready to execute
this task.
This will configure all of the nested deployment tools to allow them to
process the jar. If no deployment tools have been configured a generic
tool is created to handle the jar.
A parser is configured and then each descriptor found is passed to all
the deployment tool elements for processing.
- execute in interface Task
BuildException
- thrown whenever a problem is
encountered that cannot be recovered from, to signal to ant
that a major problem occurred within this task.
getCmpversion
public String getCmpversion()
Gets the CMP version.
- CMP version
- ant 1.6
getDestdir
public File getDestdir()
Gets the destination directory.
- destination directory
- ant 1.6
setBasejarname
public void setBasejarname(String inValue)
Set the base name of the EJB JAR that is to be created if it is not
to be determined from the name of the deployment descriptor files.
inValue
- the basename that will be used when writing the jar
file containing the EJB
setBasenameterminator
public void setBasenameterminator(String inValue)
The string which terminates the bean name.
The convention used by this task is
that bean descriptors are named as the BeanName with some suffix. The
baseNameTerminator string separates the bean name and the suffix and
is used to determine the bean name.
inValue
- a string which marks the end of the basename.
setClasspath
public void setClasspath(Path classpath)
Set the classpath to use when resolving classes for inclusion in the jar.
classpath
- the classpath to use.
setCmpversion
public void setCmpversion(EjbJar.CMPVersion version)
Sets the CMP version.
version
- CMP version.
Must be either 1.0
or 2.0
.
Default is 1.0
.
Initially, only the JBoss implementation does something specific for CMP 2.0.
- ant 1.6
setDependency
public void setDependency(String analyzer)
Set the analyzer to use when adding in dependencies to the JAR.
analyzer
- the name of the dependency analyzer or a class.
setDescriptordir
public void setDescriptordir(File inDir)
Set the descriptor directory. The descriptor directory contains the
EJB deployment descriptors. These are XML files that declare the
properties of a bean in a particular deployment scenario. Such
properties include, for example, the transactional nature of the bean
and the security access control to the bean's methods.
inDir
- the directory containing the deployment descriptors.
setDestdir
public void setDestdir(File inDir)
Set the destination directory. The EJB jar files will be written into
this directory. The jar files that exist in this directory are also
used when determining if the contents of the jar file have changed.
Note that this parameter is only used if no deployment tools are
specified. Typically each deployment tool will specify its own
destination directory.
inDir
- the destination directory in which to generate jars
setFlatdestdir
public void setFlatdestdir(boolean inValue)
Controls whether the
destination JARs are written out in the destination directory with
the same hierarchical structure from which the deployment descriptors
have been read. If this is set to true the generated EJB jars are
written into the root of the destination directory, otherwise they
are written out in the same relative position as the deployment
descriptors in the descriptor directory.
inValue
- the new value of the flatdestdir flag.
setGenericjarsuffix
public void setGenericjarsuffix(String inString)
Set the suffix for the generated jar file. When generic jars are
generated, they have a suffix which is appended to the the bean name
to create the name of the jar file. Note that this suffix includes
the extension fo te jar file and should therefore end with an
appropriate extension such as .jar or .ear
inString
- the string to use as the suffix.
setManifest
public void setManifest(File manifest)
Set the Manifest file to use when jarring. As of EJB 1.1, manifest
files are no longer used to configure the EJB. However, they still
have a vital importance if the EJB is intended to be packaged in an
EAR file. By adding "Class-Path" settings to a Manifest file, the EJB
can look for classes inside the EAR file itself, allowing for easier
deployment. This is outlined in the J2EE specification, and all J2EE
components are meant to support it.
manifest
- the manifest to be used in the EJB jar
setNaming
public void setNaming(EjbJar.NamingScheme namingScheme)
Set the naming scheme used to determine the name of the generated jars
from the deployment descriptor
namingScheme
- the naming scheme to be used
setSrcdir
public void setSrcdir(File inDir)
Sets the source directory, which is the directory that
contains the classes that will be added to the EJB jar. Typically
this will include the home and remote interfaces and the bean class.
inDir
- the source directory.