Tomcat Version: 7.0.27

OS: Windows XP/7

 

I'm fixing an issue we are having with a webapp that does some
communication over RMI with a remote  server. Calls that would be
instant in similar applications not inside the tomcat container are
taking more than 30 seconds when called from tomcat. After debugging
I've found that  when an RMI call is made, the classlist containing all
the jars in the webapp lib folders is being serialized with the data.
Which wouldn't be a problem normally, except the webapp has >300 jars in
its lib folder.

 

The only solution I have found is to create a custom WebAppClassloader
that returns a zero length URL array on the getURLs() call. We don't do
any dynamic class loading so breaking that is not a problem.

 

My question is, is there any other way to resolve this, like a
configuration property? If not, are there any problems that I am going
to introduce by overriding this method? Can I override the classloader
for just this webapp or am I stuck doing it for the entire tomcat
instance?

 

Thanks,

Andrew Kujtan

Reply via email to