Community
Participate
Working Groups
Mail thread http://dev.eclipse.org/mhonarc/lists/virgo-dev/msg00977.html
Created attachment 201505 [details] Sample web application
Created attachment 201506 [details] Patch in WebBundleTransformer
Created attachment 201509 [details] Patch in ManifestUpgrader and StandardBundleInstallArtifact
Hi, I identify 3 places where Bundle-SymbolicName, Web-ContextPath and Bundle-ManifestVersion are added to the plain web application's Manifest.mf file. Unfortunately this prevents plain web application Manifest.mf transformation when WABHeaders=strict. Please review the patches. Do you think that there are other uses cases that are not covered with this patch? I'm looking forward to your comments. Regards Violeta
Giving a target milestone of 3.5.0 as I don't want to hold the release up for it. Work around is to set the WABHeaders back to defaulted.
Comment on attachment 201506 [details] Patch in WebBundleTransformer There are a couple of problems with this patch. The first is that the kernel has become "infected" with web specific code. StandardBundleInstallArtifact should not have any web specific code in it. The second is that the following test in ManifestUpgrader looks wrong: if (!(hasWarSuffix(installArtifact) && !specifiesWebContextPath(bundleManifest))) { because the presence of a number of other headers can indicate a WAB, not just web context path. Also, because this bug slipped through, I think it would be worth adding a test, probably an integration test, to check that WARs are handled correctly. One other thing to consider. There is duplication of the hasWarSuffix logic and it might be better to add a hasExtension method to util and then use that throughout.
Sorry, but comment 6 should have been about the other attachment.
I'm preparing another patch. We may think about donwporting this fix to 3.0.x as there are a lot of questions about it in the forum.
Since 3.5.0 has shipped, targeting 3.6.0. If this bug is more urgent, please target 3.5.1 and provide a fix.
This has missed 3.6.0, now targetting 3.7.0.
Tested with 3.7.0.M04