java.lang.reflect.InvocationTargetException and OutOfMemoryError non heap
807580Sep 25 2009 — edited Sep 25 2009Hi,
After tomcat running 3,4 days well with 75 users, suddenly we are facing InvocationTargetException caused by OutOfMemoryError for 3,4 users some times. The JAVA_OPTS options are well configured as observed no heap error issue. Heap utilization is only 60% but Foud that CodeCache is reaching maximum. As codecache is no heap,so it may not provide outofmemory issue. Currently everyday outof production time we are restarting server to avoid sudden exception in production. The following is the exception we received as suggestion of finding the root cause.
We are using XForms xslt & xpl's in which our spring integrated java dynamically compiled code will be called.
ep 11, 2009 8:38:00 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2
08:38:00,202 WARN [PortletLocalServiceImpl:143] Portlet not found for liferay.com preferencetest_WAR_ops
08:38:00,233 WARN [PortletLocalServiceImpl:143] Portlet not found for liferay.com preferencetest_WAR_ops
java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor2049.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.orbeon.oxf.processor.SimpleProcessor$1.readImpl(SimpleProcessor.java:70)
at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995)
at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1178)
at org.orbeon.oxf.processor.JavaProcessor$1.readImpl(JavaProcessor.java:66)
at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995)
at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1178)
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:350)
at org.orbeon.oxf.processor.pipeline.AggregatorProcessor.access$100(AggregatorProcessor.java:38)
at org.orbeon.oxf.processor.pipeline.AggregatorProcessor$1.readImpl(AggregatorProcessor.java:93)
at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995)
....
...
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java:368)
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsDOM4J(ProcessorImpl.java:387)
at com.expeditor.processors.SingleTaskData.generateData(SingleTaskData.java:85)
at sun.reflect.GeneratedMethodAccessor2048.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.orbeon.oxf.processor.SimpleProcessor$1.readImpl(SimpleProcessor.java:70)
at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995)
at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1178)
at org.orbeon.oxf.processor.JavaProcessor$1.readImpl(JavaProcessor.java:66)
..........
at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:95)
at org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:96)
at org.orbeon.oxf.portlet.OPSPortletDelegate.forward(OPSPortletDelegate.java:253)
at org.orbeon.oxf.externalcontext.PortletToExternalContextRequestDispatcherWrapper.forward(PortletToExternalContextRequestDispatcherWrapper.java:35)
at org.orbeon.oxf.xforms.XFormsSubmissionUtils.openOptimizedConnection(XFormsSubmissionUtils.java:108)
at org.orbeon.oxf.xforms.XFormsModelSubmission.performDefaultAction(XFormsModelSubmission.java:768)
at org.orbeon.oxf.xforms.XFormsContainingDocument.dispatchEvent(XFormsContainingDocument.java:1283)
------------
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.OutOfMemoryError
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getDeclaredMethods(Class.java:1791)
at org.codehaus.janino.ReflectionIClass.getDeclaredIMethods2(ReflectionIClass.java)
at org.codehaus.janino.IClass.getDeclaredIMethods(IClass.java)
at org.codehaus.janino.IClass.getDeclaredIMethods(IClass.java)
at org.codehaus.janino.UnitCompiler.getIMethods(UnitCompiler.java)
at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java)
at o