Caused by: java.lang.OutOfMemoryError: getNewTla
at java.lang.reflect.Method.copy(Method.java:143)
at java.lang.reflect.ReflectAccess.copyMethod(ReflectAccess.java:118)
at sun.reflect.ReflectionFactory.copyMethod(ReflectionFactory.java:282)
at java.lang.Class.copyMethods(Class.java:2748)
at java.lang.Class.getMethods(Class.java:1410)
at java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1284)
at java.beans.Introspector.internalFindMethod(Introspector.java:1316)
at java.beans.Introspector.findMethod(Introspector.java:1387)
at java.beans.Introspector.findMethod(Introspector.java:1367)
at java.beans.PropertyDescriptor.getReadMethod(PropertyDescriptor.java:179)
at ognl.OgnlRuntime.getGetMethod(OgnlRuntime.java:1249)
at ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:892)
at ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:54)
at ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)
at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616)
at ognl.ASTProperty.getValueBody(ASTProperty.java:99)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at org.apache.tapestry.binding.ExpressionBinding.resolveProperty(ExpressionBinding.java:201)
at org.apache.tapestry.binding.ExpressionBinding.getObject(ExpressionBinding.java:194)
at org.apache.tapestry.binding.AbstractBinding.getObject(AbstractBinding.java:208)
at org.apache.tapestry.param.AbstractParameterConnector.getBindingValue(AbstractParameterConnector.java:105)
at org.apache.tapestry.param.ObjectParameterConnector.setParameter(ObjectParameterConnector.java:53)
at org.apache.tapestry.param.ParameterManager.setParameters(ParameterManager.java:105)
at org.apache.tapestry.AbstractComponent.prepareForRender(AbstractComponent.java:900)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:855)
at org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:626)
at org.apache.tapestry.components.Foreach.renderComponent(Foreach.java:122)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:859)
at org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:626)
at org.apache.tapestry.form.Form.renderComponent(Form.java:362)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:859)
at org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:626)
at org.apache.tapestry.html.Body.renderComponent(Body.java:294)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:859)
at org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:118)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:859)
at org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:300)
at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:368)
at org.apache.tapestry.engine.AbstractEngine.renderResponse(AbstractEngine.java:749)
at org.apache.tapestry.engine.PageService.service(PageService.java:77)
at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:889)
at org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:200)
at org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:161)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at org.apache.tapestry.RedirectFilter.doFilter(RedirectFilter.java:106)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
... 8 more


现象:现网换完包后就一会就挂掉(重启也没用),后台很多java.lang.OutOfMemoryError: getNewTla 错误。

错误原因:SQL笛卡尔积。

修正办法:安照错误堆栈修改含笛卡尔积的SQL(看报错上下文出现最多的语句)