On 07/08/2012 00:24, Dale Ogilvie wrote:
> Daniel Mikusa [mailto:dmik...@vmware.com] wrote:
> 
>> You would be using a shared class loader if you are placing JAR files used 
>> by multiple deployed web applications into the
>> $CATALINA_BASE/lib or $CATALINA_HOME/lib directory.  Are you placing any JAR 
>> files into those folders?  
> 
> We have placed three JDBC driver jars in $CATALINA_HOME/lib. I presume this 
> is irrelevant to this issue. The class in question 
> org.apache.jasper.runtime.ELContextImpl only appears to be in a jar located 
> in app2/WEB-INF/lib, yet it is being loaded for app1. I have verified that 
> the class is NOT in $CATALINA_HOME/lib. If we remove app2 from tomcat, the 
> ClassCastException disappears from app1. Further, removing the jar containing 
> org.apache.jasper.runtime.ELContextImpl  from app2 also resolves the issue.
> 
> There does seem to be a problem that app2 is sharing classes with app1 from 
> app2/WEB-INF/lib. How can this happen?

Tomcat blocks some JARs from being loaded from a webapp lib - the
Servlet APIs - maybe the Tomcat JARs should go on the list.
This might be construed as a bug, or at least an enhancement request.


p

>> Maybe try adding the JVM option "-verbose:class" to "bin/setenv.sh".  This 
>> option will cause the JVM to log when a class is loaded and from where it 
>> was loaded.
> 
> I'll look into that. 
> 
>> Dan
> 
> Thanks.
> 
> Dale
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
> 


-- 

[key:62590808]

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to