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