Hi,

I am again wrestling with the <ejbjar> task, this time trying to include the
manifest.mf file contained in the descriptors directory with the ejb jar.
The problem is, Ant is not using the manifest.mf contained in the descriptor
directory and is overwriting it with a (basically) empty one.

The ejbjar task doc lists the following as attributes:

    flatdestdir
    classpath
    genericjarsuffix
    basenameterminator
    basejarname
    naming
    destdir
    srcdir
    descriptordir

though the Ejbjar.java file suggests a hidden feature(?):

     /**
      * 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.
      */
     public void setManifest(File manifest) {
         config.manifest = manifest;
     }

The comment states exactly why I need to include the existing manifest, viz.
it contains the classpath used by the .ear file.  I included the manifest
attribute in my <ejbjar> task, but simply using

  <ejbjar         srcdir                ="${ejbjar.classes.dir}"
                    destdir                    ="${deploy.dir}"
                    descriptordir
="${project.root}/ant_descriptors"
                    flatdestdir               ="true"
                    genericjarsuffix     =".jar"
                    manifest               ="MANIFEST.MF">

results in

    [ejbjar] building session_foo.jar with 6 files

    BUILD FAILED

    b:\d2v1\build.xml:264: Unable to read manifest

changing the manifest filename to "/MANIFEST.MF", "META-INF/MANIFEST.MF", or
"/META-INF/MANIFEST.MF" has no impact on this unfortunate outcome.

System spec: ant 1.4.1, NT 4.0sp6, jdk1.3.1_01


thanks in advance

Todd


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to