You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "nick (Updated) (JIRA)" <ji...@apache.org> on 2012/02/24 08:20:49 UTC

[jira] [Updated] (WW-3662) convention-plugin not work in jboss-7.0.0

     [ https://issues.apache.org/jira/browse/WW-3662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

nick updated WW-3662:
---------------------

    Comment: was deleted

(was: Hi Daniel,
         What ever you have mentioned, i guess still to be looked. We were also facing the same problem with reading action classes from war files in Jboss AS 7., 
Jboss AS7 EAR tructure will be like this

{
    xyz.ear--|
             |-META-INF
             |-abc.war( will contain some Action classes)
             |-lib-|
                   |-abc.jar (will contain some Action classes and struts.xml file)
                   |-struts2xyz.jar
}

before the patch convention plugin even failed to read from abc.jar, after the patch it got resolved.

but problem still exist in reading Action classes from abc.war.

FYI : Jboss AS 7 using Modular class loading, so all jar files comes under xyz.ear/lib/ will be in single class loade(Parent class loader) and each war files under xyz.ear\ will be in separate class loader. )
    
> 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
>            Assignee: Maurizio Cucchiara
>             Fix For: 2.5
>
>         Attachments: JBoss7Fix-2.patch, JBoss7Fix.patch, URLUtil.java, xwork-core-2.2.1.2-SNAPSHOT.jar, xwork-core-2.2.3.1-temporarily-resolved.jar
>
>
> 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.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira