Affects Version/s: Master
Component/s: Core Infrastructure > Wab Generator
When deploying a war-styled plugin with listener-classes declared in web.xml, the deployed plugin does not work as expected.
WAR-styled plugins are processed by Liferay's WAB Generator during deployment.
Based on the documentation, the listener-classes declared should have their packages added under the Import-Package header in the WAB's META-INF/MANIFEST.MF file.
Since the packages of the declared listener-classes are not added to the Import-Package header, a ClassNotFoundException is being thrown.
Steps to Reproduce
- Startup Liferay
- Deploy the attached wab-import-poc.war
- Observe log
- Expected Result: The bundle will boot successfully
- Actual Result: ClassNotFoundException is thrown
- Shutdown Liferay
- Include the following portal property:
- Restart Liferay and wait till it starts up completely
- Re-deploy the attached wab-import-poc.jar
- Notice: ClassNotFoundException is no longer thrown.
Attached is a POC war-styled plugin that was generated using Liferay Blade's: WAR MVC Portlet template.
The only change was modifying web.xml to include the following listener-class tag:
Attached is also the source: wab-import-poc-src.zip