After playing around I don't think the leak is from JAXBContext. My web app is running under struts 1.3.10. I tested the blank web apps that comes with struts 1.3.10 and it showed a memory leak on undeploying and redeploying. (so did the blank web app for the current struts 2). Using Eclipse MAT the retained WebappClassLoader showed a bunch of commons.beanutils classes but I am not sure how to follow it any farther.
So either there is something funky with commons.beanutils 1.8.0 (also tried the newer version)(ie something tricky with reflection or commons-logging) or I have some how done something really stupid with my tomcat/jvm configuration that goofs up garbage collection. mas On 05/03/2010 12:15 PM, Mark Shifman wrote: > I have a web app running under tomcat-6.0.26 with > JreMemoryLeakPreventionListener, java jdk1.6.0_18. > > Using jmap -histo pid, I can watch > com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl, etc increase in number > after running my unmarshal action, followed by undeploy and redeploy. Find > Leaks in the manager also finds leaks. > > The JAXBContext instance is created with a singleton that is an enum (using > Josh Block's pattern): > > public enum JAXBContextMascot { > INSTANCE("com.matrixscience.xmlns.schema.mascot_search_results_2" ); > private JAXBContext ctx; > JAXBContextMascot(String contextPath) { > try { > ctx =JAXBContext.newInstance(clazz); > } catch (JAXBException e) { > throw new RuntimeException(e); > } > } > public Unmarshaller createUnmarshaller(){ > try { > return ctx.createUnmarshaller(); > } catch (JAXBException e) { > throw new RuntimeException(e); > } > } > } > > Am I doing something wrong which is causing the memory leak? > JAXBContext.newInstance() can take a ClassLoader argument. Is there some > ClassLoader I should be using that will get around this? > > Any help would be appreciated. > mas > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org