[ http://mc4j.org/jira/browse/STS-397?page=comments#action_10745 ] Jan Moravec commented on STS-397: ---------------------------------
Hi Tim, No I have not tried 1.5 trunk, I am still on 1.4. Will try sometime in the future when I start migrating my app onto 1.5. > ResolverUtil fails to load action beans outside WEB-INF under JBoss > ------------------------------------------------------------------- > > Key: STS-397 > URL: http://mc4j.org/jira/browse/STS-397 > Project: Stripes > Issue Type: Bug > Affects Versions: Release 1.4.3 > Environment: Windows 2000, JDK 1.5.0.11, JBoss 4.0.2 > Reporter: Jan Moravec > Assigned To: Tim Fennell > Attachments: ResolverUtil.java > > > I encountered problem with Stripes failing to find action beans located > outside WEB-INF/class. No exception was thrown, the action beans just were > not found. After some digging I came to the following conclusion and solution: > The current dynamic action bean discovery implementation makes use of the > URLs returned from URLClassLoaders found in the CL hierarchy of the current > thread context CL. This is an example of the CL hierarchy with dumped URLs of > the found URLClassLoader instances under JBoss: > 10:56:43,218 INFO (RMI TCP Connection(3)-192.168.1.65) [STDOUT] > WebappClassLoader > delegate: false > repositories: > /WEB-INF/classes/ > ----------> Parent Classloader: > [EMAIL PROTECTED] > > file:/C:/JBoss/server/eshops/tmp/deploy/tmp5995eshops.ear-contents/eshops-exp.war/WEB-INF/classes/ > [EMAIL PROTECTED] > empty URLs > [EMAIL PROTECTED] > url=file:/C:/JBoss/server/eshops/tmp/deploy/tmp5995eshops.ear ,addedOrder=28} > empty URLs > [EMAIL PROTECTED] > empty URLs > [EMAIL PROTECTED] > empty URLs > [EMAIL PROTECTED] > file:/C:/Java/Jdk1.5/lib/tools.jar > file:/C:/JBoss/bin/run.jar > [EMAIL PROTECTED] > file:/C:/Java/Jdk1.5/jre/lib/ext/bcprov.jar > file:/C:/Java/Jdk1.5/jre/lib/ext/dnsns.jar > file:/C:/Java/Jdk1.5/jre/lib/ext/localedata.jar > file:/C:/Java/Jdk1.5/jre/lib/ext/localedata.pack > file:/C:/Java/Jdk1.5/jre/lib/ext/sunjce_provider.jar > file:/C:/Java/Jdk1.5/jre/lib/ext/sunpkcs11.jar > As one can see, the URLs of EAR's utility JARs are not exposed by JBoss > org.jboss.mx.loading.UnifiedClassLoader3. And that is even though the UCL is > a subclass of URLClassLoader! Its getURLs method seems to return an empty > array. > One needs to call getClasspath() method on the UCL to obtain the array of > URLs of JARs inside the deployed EAR. These URLs can then be normally scanned > for ActionBean instances. I have a patched version of ResolverUtil class that > seems to work. I will attach it later if I find out how to do that (no file > upload on this screen). > Maybe the action bean discovery mechanism should be configurable because you > may need similar hacks for other application servers.... -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://mc4j.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Stripes-development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/stripes-development
