You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "Vogel,Chris" <ch...@edwardjones.com> on 2009/03/05 17:21:46 UTC

RE: Problem with Jboss 4.2.3.GA and convention plug-in 2.1.6

Jerome,
 
I wanted to let you know that a colleague of mine worked with Musachy and got this problem fixed for the next version (2.1.3) of XWork.  I believe it will now only log the exception at a debug level.
 
Chris

________________________________

From: Jerome ROBERT [mailto:jrm.robert@gmail.com] 
Sent: Saturday, February 21, 2009 1:08 PM
To: Vogel,Chris
Cc: Struts Users Mailing List
Subject: Re: Problem with Jboss 4.2.3.GA and convention plug-in 2.1.6


Chris,
I haven't had much time to investigate on that problem since my last post (2 weeks ago) and unfortunately hadn't come to any resolution of the problem. In fact we tried to deploy on JBoss 5.0.0.GA and it solved the problem since its classloading policy seems to be more orthodox but by doing this we ran into an issue involving spring classpath scanning and the new jboss5 virtual file system "vfs". Now i've no other choice than to make the convention plug-in work with JBoss 4.2.3 whatever it may imply ! (hope it won't cost me a leg ! -sorry for that joke-)
As far as I have investigated I can tell that the behaviour you described in your  mail with regard to weblogic is precisely  what happens in Jboss. I feel sorry not to be more helpful. I am going to resume investigation, i'll tell you if i make an interesting finding that may avoid the necessity to "hide" stack traces.

Best regards

Jérôme ROBERT


2009/2/20 Vogel,Chris <ch...@edwardjones.com>


	Jerome, 

	I found your thread about this in one of the various mail archive sites.  I was wondering if you had come to any resolution of this.  We are experiencing the same exception in WebLogic 10.  However, with lots of looking at the Struts and XWorks code and remote debugging, we have determined that the stack trace is not an indication of a real error.  Is that what you are finding as well?

	In case you haven't figured it out, I'll tell you what I have learned.  Struts/XWorks scans for Action classes and does this by scanning directories it is given by the class loader, not just by looking at JAR files.  The PackageBasedActionConfigBuilder that you see in your stack trace makes a call to the getResources() method of the current thread's context class loader, which returns back directories in the class path for that class loader.  That call, for WebLogic, actually returns back the base directory of the WebLogic domain.  The ClassFinder class then scans all the directories returned back from the getResources() method, which for WebLogic includes every directory of the domain, and looks for Action classes.  If it finds a class that has a super class, it tries to load that super class and this is where we actually see our exception.  I'm wondering if JBoss's class loader is doing a similar thing.  ClassFinder, if it can't find the class creates an exception and then prints the stack trace and does nothing else with the exception.  We are going to modify the ClassFinder class to not print the stack trace.

	I really like Struts 2 and the convention plug-in, but we have had to modify the XWorks code two other times before this because of the idiosyncrasies of WebLogic.

	Chris Vogel 

	 
	 If you are not the intended recipient of this message (including attachments), or if you have received this message in error, immediately notify us and delete it and any attachments.  If you no longer wish to receive e-mail from Edward Jones, please send this request to messages@edwardjones.com.  You must include the e-mail address that you wish not to receive e-mail communications.  For important additional information related to this e-mail, visit www.edwardjones.com/US_email_disclosure <http://www.edwardjones.com/US_email_disclosure>