Skip to content

[MEAR-182] Skinny WAR's - Skip Class-Path Modification in Manifest #359

@jira-importer

Description

@jira-importer

Mario Däpp opened MEAR-182 and commented

From Java EE 5, a library directory may be specified in the application.xml (element library-directory). The Maven EAR Plugin already supports this for generating the application.xml (value of property defaultLibBundleDir).

The Java EE 5 specification mandates that all JAR files contained in the library directory be made available to all modules within the EAR file (cf. chapter EE.8.2.1 Bundled Libraries, section 2).

If one specifies both the skinnyWars (value = true) and defaultLibBundleDir parameters, the libraries will be removed from the WAR and copied to the defaultLibBundleDir. They will also be added to the Class-Path in the WAR files manifest. This is unnecessary as per the Java EE 5 specification. Even worse, it breaks my EAR on WebLogic (classloading issues).

I therefore propose the following improvement to the skinny WAR's functionality: If the Java EE version is 5 or greater and the defaultLibBundleDir has been specified, the Class-Path in the WAR's manifest should remain unchanged.

I've created a corresponding patch and integration test.


Affects: 2.9

Attachments:

Issue Links:

  • MEAR-292 skipClassPathModification option should prevent adding Class-Path entry into MANIFEST.mf
    ("causes")

Remote Links:

1 votes, 4 watchers

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions