geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From fmeili <>
Subject EAR bundle dir classpath issue
Date Thu, 14 Aug 2008 14:13:51 GMT


I've try to build an EAR with the default lib/ bundle directory without
using the manifes Class-Path entry in all WAR's which references the jar
files in the lib/ directory. This EAR should be standard JEE5 compliant and
should be deployable without any change in Geronimo 2.1.2 and GlassFish
(latest Version).

Now I found a difference in how to access the jar files located in the EARs
lib/ directory from within an WAR module.

In Geronimo I have to use:
to get the jar file content.

In GlassFish I have to use:
notice - without the lib/ prefix.

As far as I understand the JEE5 specification (section 8.2.1 Bundled
Libraries), all JAR-Files in the EARs lib/ directory should be available in
all (also WAR) Modules classloaders. So I think the lib/ prefix should not
be specified.

I've tried to workaround this problem by specifying the lib directory in the
WAR manifest entry with the following entry:
ClassPath: lib/

But this results in an deployment error in Geronimo with the following

15:20:13,170 ERROR [DirectoryHotDeployer] Unable to deploy: Manifest class
entries must end with the .jar extension (J2EE 1.4 Section 8.2): module=../
org.apache.geronimo.common.DeploymentException: Manifest class path entries
 end with the .jar extension (J2EE 1.4 Section 8.2): module=../

I think this is definitely an error because the JEE5 specification section
8.2.1 explicitely allows directories in manifest Class-Path entries.

So it seems the workaround didn't work, too.

Do I make something wrong?

If not, do I have a chance to generate an generic EAR file (with the same
source code) with bundled lib/ directory usage from WAR modules, which is
deployable under Geronimo and GlassFish?


View this message in context:
Sent from the Apache Geronimo - Users mailing list archive at

View raw message