convention-plugin not work in jboss-7.0.0
-----------------------------------------
Key: WW-3662
URL: https://issues.apache.org/jira/browse/WW-3662
Project: Struts 2
Issue Type: Bug
Components: Plugin - Convention
Affects Versions: 2.2.3
Environment: OS:win7, JDK:1.6.0_26, APP:jboss 7.0.0
Reporter: lwen.ma
1. first, replace the xwork-x.x.x.jar with a bug-fixed version, see:
https://issues.apache.org/jira/browse/WW-3558, prevent the bug breaking the
deployment
2. use follow config in struts.xml
<constant name="struts.convention.exclude.parentClassLoader" value="true" />
<constant name="struts.convention.action.fileProtocols"
value="jar,vfs,vfsfile,vfszip" />
<constant name="struts.convention.package.locators" value="actions,action"
/>
<constant name="struts.convention.package.locators.disable" value="false" />
<constant name="struts.convention.package.locators.basePackage"
value="com.mcms.web.actions" />
3. deploy *.war file to jboss, then start it, get follow error log
17:40:27,711 SEVERE [com.opensymphony.xwork2.util.finder.ClassFinder]
Unable to read URL
[vfs:/G:/jboss-as-7.0.0.Final/bin/content/struts2.war/WEB-INF/classes/]:
java.io.FileNotFoundException:
G:\jboss-as-7.0.0.Final\bin\content\struts2.war\WEB-INF\classes
at java.io.FileInputStream.open(Native Method) [:1.6.0_26]
at java.io.FileInputStream.<init>(FileInputStream.java:120) [:1.6.0_26]
at java.io.FileInputStream.<init>(FileInputStream.java:79) [:1.6.0_26]
at
sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70)
[:1.6.0_26]
at
sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161)
[:1.6.0_26]
at java.net.URL.openStream(URL.java:1010) [:1.6.0_26]
at
com.opensymphony.xwork2.util.finder.ClassFinder.jar(ClassFinder.java:480)
[xwork-core-2.2.3.jar:]
at
com.opensymphony.xwork2.util.finder.ClassFinder.<init>(ClassFinder.java:144)
[xwork-core-2.2.3.jar:]
at
org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:376)
[struts2-convention-plugin-2.2.3.jar:]
at
org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:334)
[struts2-convention-plugin-2.2.3.jar:]
at
org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
[struts2-convention-plugin-2.2.3.jar:]
4. use follow config in struts.xml
<constant name="struts.convention.package.locators" value="actions,action"
/>
<constant name="struts.convention.package.locators.disable" value="false" />
<constant name="struts.convention.package.locators.basePackage"
value="com.mcms.web.actions" />
5. deploy *.war file to jboss, then start it.
The war package deployed without any error, but no struts actions will be
found(either use package scan or annotation)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira