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

Reply via email to