xiaochong / zkui

Grails ZK UI Plugin
http://grails.org/plugin/zkui
GNU Lesser General Public License v3.0
24 stars 8 forks source link

java.lang.StackOverflowError #123

Open geemang2000 opened 11 years ago

geemang2000 commented 11 years ago

OS: amazon AMI, java version "1.7.0_25", Tomcat 7.0.40-1.2, Grails 2.2.4, ZKUI 0.5.6

Hopefully something obvious. This same code works on a Mac OSX with Java 7 and Grails 2.2.4 etc.

StackTrace:

Aug 22, 2013 10:40:55 PM org.zkoss.zul.LayoutRegion setFlex:122
WARNING: The flex attribute is deprecated, use setHflex and setVflex on child component instead.
2013-08-22 22:40:56,030 [http-bio-8080-exec-1] ERROR errors.GrailsExceptionResolver  - StackOverflowError occurred when processing request: [GET] /reporting/
Stacktrace follows:
org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException: Error processing GroovyPageView: Error executing tag <z:borderlayout>: Error executing tag <z:west>: Error executing tag <z:vlayout>: Error executing tag <z:panel>: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:195)
    at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <z:borderlayout>: Error executing tag <z:west>: Error executing tag <z:vlayout>: Error executing tag <z:panel>: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at gsp_idcPearsonReporting_portalindex_gsp$_run_closure2.doCall(gsp_idcPearsonReporting_portalindex_gsp.groovy:122)
    at gsp_idcPearsonReporting_portalindex_gsp.run(gsp_idcPearsonReporting_portalindex_gsp.groovy:125)
    ... 5 more
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <z:west>: Error executing tag <z:vlayout>: Error executing tag <z:panel>: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at gsp_idcPearsonReporting_portalindex_gsp$_run_closure2_closure4.doCall(gsp_idcPearsonReporting_portalindex_gsp.groovy:98)
    at org.grails.plugins.zkui.AbstractTagLib.bodyCall(AbstractTagLib.groovy:75)
    at org.grails.plugins.zkui.AbstractTagLib$EmbedRichlet.service(AbstractTagLib.groovy:176)
    at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage0(UiEngineImpl.java:436)
    at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage(UiEngineImpl.java:312)
    at org.grails.plugins.zkui.AbstractTagLib.doRender(AbstractTagLib.groovy:140)
    at org.grails.plugins.zkui.AbstractTagLib.doTag(AbstractTagLib.groovy:37)
    at org.grails.plugins.zkui.ZulTagLib$_closure14.doCall(ZulTagLib.groovy:693)
    ... 7 more
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <z:vlayout>: Error executing tag <z:panel>: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at gsp_idcPearsonReporting_portalindex_gsp$_run_closure2_closure4_closure5.doCall(gsp_idcPearsonReporting_portalindex_gsp.groovy:95)
    at org.grails.plugins.zkui.AbstractTagLib.bodyCall(AbstractTagLib.groovy:75)
    at org.grails.plugins.zkui.AbstractTagLib.doChildComponent(AbstractTagLib.groovy:48)
    at org.grails.plugins.zkui.AbstractTagLib.doTag(AbstractTagLib.groovy:39)
    at org.grails.plugins.zkui.ZulTagLib$_closure125.doCall(ZulTagLib.groovy:6549)
    ... 15 more
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <z:panel>: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at gsp_idcPearsonReporting_portalindex_gsp$_run_closure2_closure4_closure5_closure8.doCall(gsp_idcPearsonReporting_portalindex_gsp.groovy:92)
    at org.grails.plugins.zkui.AbstractTagLib.bodyCall(AbstractTagLib.groovy:75)
    at org.grails.plugins.zkui.AbstractTagLib.doChildComponent(AbstractTagLib.groovy:48)
    at org.grails.plugins.zkui.AbstractTagLib.doTag(AbstractTagLib.groovy:39)
    at org.grails.plugins.zkui.ZulTagLib$_closure124.doCall(ZulTagLib.groovy:6492)
    ... 20 more
Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <z:panelchildren>: java.lang.StackOverflowError
    at gsp_idcPearsonReporting_portalindex_gsp$_run_closure2_closure4_closure5_closure8_closure9.doCall(gsp_idcPearsonReporting_portalindex_gsp.groovy:89)
    at org.grails.plugins.zkui.AbstractTagLib.bodyCall(AbstractTagLib.groovy:75)
    at org.grails.plugins.zkui.AbstractTagLib.doChildComponent(AbstractTagLib.groovy:48)
    at org.grails.plugins.zkui.AbstractTagLib.doTag(AbstractTagLib.groovy:39)
    at org.grails.plugins.zkui.ZulTagLib$_closure80.doCall(ZulTagLib.groovy:4255)
    ... 25 more
Caused by: org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.StackOverflowError
    ... 30 more
Caused by: java.lang.StackOverflowError
    at java.io.UnixFileSystem.getBooleanAttributes(UnixFileSystem.java:242)
    at java.io.File.exists(File.java:772)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:358)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName(Class.java:270)
    at java.lang.Class.forName(Class.java:270)
    at com.sun.beans.finder.ClassFinder.findClass(ClassFinder.java:103)
    at com.sun.beans.finder.InstanceFinder.instantiate(InstanceFinder.java:93)
    at com.sun.beans.finder.InstanceFinder.find(InstanceFinder.java:66)
    at java.beans.Introspector.findExplicitBeanInfo(Introspector.java:436)
    at java.beans.Introspector.<init>(Introspector.java:386)
    at java.beans.Introspector.getBeanInfo(Introspector.java:161)
    at org.grails.plugins.zkui.AbstractTagLib.doTag(AbstractTagLib.groovy:30)
    at org.grails.plugins.zkui.ZulTagLib$_closure81.doCall(ZulTagLib.groovy:4300)
    ... 30 more

index.gsp

<%@ page import="grails.converters.JSON" %>
<html>
<head>
<meta name="layout" content="idc-main" />
<%-- TODO: externalize this to a branding file --%>
<title>ICSynergy Portal</title>
<script type="text/javascript" src='https://www.google.com/jsapi?autoload={"modules":[{"name":"visualization","version":"1","packages":["corechart","controls"]}]}'></script>
</head>
<body>
   <z:borderlayout height="650px" width="800px" sclass="inputPanelWide">
      <z:north border="0" />
      <z:west border="0" size="25%" flex="true" width="200px" margins="5,5,5,5">
         <z:vlayout spacing="0">
            <z:panel width="100%" border="normal" title="Audit Reports" style="margin-top:5px">
               <z:panelchildren style="padding:5px;">
                  <z:vbox align="left">
                     <z:toolbarbutton image="/images/famfamfam/report_go.png" href="${createLink(controller:'reports',action:'zkUserAuthenticationTable')}" label="Authentication" tooltip="AuthenticationPopUp,position=end_before,delay=0"/>
                     <z:toolbarbutton image="${resource(dir:'images/famfamfam',file:'report_go.png')}" href="${createLink(controller:'reports',action:'zkUserApplicationUsageTable')}" label="User / Application Usage" tooltip="UserAppPopUp,position=end_before,delay=0"/>
                     <z:toolbarbutton image="/images/famfamfam/report_go.png" href="${createLink(controller:'reports',action:'zkFailedUserAuthenticationTable')}" label="Failed Authentication" tooltip="FailedUserAuthenticationsPopUp,position=end_before,delay=0" />
                     <z:toolbarbutton image="/images/famfamfam/report_go.png" href="${createLink(controller:'reports',action:'zkUniqueUserAuthenticationTable')}" label="Unique Authentication" tooltip="UniqueAuthenticationPopUp,position=end_before,delay=0" />
                  </z:vbox>
                  <z:popup id='AuthenticationPopUp'>
                     <z:html>View user authentication events<br/>for a given time period.</z:html>
                  </z:popup>
                  <z:popup id='UserAppPopUp'>
                     <z:html>View user application access<br/>events for a given time period.</z:html>
                  </z:popup>
                  <z:popup id='FailedUserAuthenticationsPopUp'>
                     <z:html>View failed user authentication<br/>events for a given time period.</z:html>
                  </z:popup>
                  <z:popup id='UniqueAuthenticationPopUp'>
                     <z:html>View aggregated user authentication<br/>events for a given time period.</z:html>
                  </z:popup>
               </z:panelchildren>
            </z:panel>
         </z:vlayout>
      </z:west>
      <z:center border="0" margins="5,5,5,5">
         <z:vlayout spacing="0">
            <g:include view="portal/ajaxreportwrapper.gsp" params="[renderer: 'renderAppUsageStatsChart', reportID: 'appusagestatschart', reportname:'Site Application Information']" />
            <g:include view="portal/ajaxreportwrapper.gsp" params="[renderer: 'renderMonthlyLoginStatsChart', reportID: 'monthlyloginstatschart', reportname:'Site User Login Stats']" />
         </z:vlayout>
      </z:center>
      <z:south margins="0,5,5,5" border="0"><font color="gray"><i>&copy; 2012 ICSynergy International </i><small>v.<g:meta name="app.version"/></small></font></z:south>
   </z:borderlayout>
</body>
</html>

idc-main.gsp

<%-- NOTE THIS DOCTYPE IS IMPORTANT FOR ZKUI --%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
        <head>
                <z:resources/>
                <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
                <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
                <title><g:layoutTitle default="Identity Central"/></title>
                <meta name="viewport" content="width=device-width, initial-scale=1.0">
                <link rel="stylesheet" type="text/css" href="${resource(dir:'css',file:'idc-portal.css')}"/>
                <link rel="shortcut icon" href="${resource(dir: 'images', file: 'idc-favicon.ico')}" type="image/x-icon"/>
                <g:layoutHead/>
                <r:layoutResources />
        </head>
        <body style="padding: 0px">
        <z:window width="100%" height="100%">
                <%-- NOTE this script must be inside the window --%>
                <z:borderlayout>
                        <z:north sclass="header" border="none" height="70px">
                                <z:hlayout>
                                        <img src="${resource(dir:'images',file:'symplified-brand-2.png')}" alt="Identity Central" />
                                </z:hlayout>
                        </z:north>
                        <z:center border="none" autoscroll="true">
                                <z:vbox sclass="centerBody" height="100%" width="100%" align="center">
                                        <g:layoutBody/>
                                </z:vbox>
                        </z:center>
                </z:borderlayout>
        </z:window>
        </body>
</html>
geemang2000 commented 11 years ago

import grails.converters.JSON import org.codehaus.groovy.grails.plugins.metadata.GrailsPlugin import org.codehaus.groovy.grails.web.pages.GroovyPage import org.codehaus.groovy.grails.web.taglib. import org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException import org.springframework.web.util. import grails.util.GrailsUtil

class gsp_idcPearsonReporting_portalindex_gsp extends GroovyPage { public String getGroovyPageFileName() { "/WEB-INF/grails-app/views/portal/index.gsp" } public Object run() { Writer out = getOut() Writer codecOut = getCodecOut() registerSitemeshPreprocessMode() printHtmlPart(0) createTagBody(1, {-> printHtmlPart(1) invokeTag('captureMeta','sitemesh',4,['gsp_sm_xmlClosingForEmptyTag':("/"),'name':("layout"),'content':("idc-main")],-1) printHtmlPart(2) createTagBody(2, {-> createClosureForHtmlPart(3, 3) invokeTag('captureTitle','sitemesh',6,[:],3) }) invokeTag('wrapTitleTag','sitemesh',6,[:],2) printHtmlPart(4) }) invokeTag('captureHead','sitemesh',7,[:],1) printHtmlPart(1) createTagBody(1, {-> printHtmlPart(5) createTagBody(2, {-> printHtmlPart(6) invokeTag('north','z',10,['border':("0")],-1) printHtmlPart(6) createTagBody(3, {-> printHtmlPart(7) createTagBody(4, {-> printHtmlPart(8) createTagBody(5, {-> printHtmlPart(9) createTagBody(6, {-> printHtmlPart(10) createTagBody(7, {-> printHtmlPart(11) invokeTag('toolbarbutton','z',17,['image':("/images/famfamfam/report_go.png"),'href':(createLink(controller:'reports',action:'zkUserAuthenticationTable')),'label':("Authentication"),'tooltip':("AuthenticationPopUp,position=end_before,delay=0")],-1) printHtmlPart(11) invokeTag('toolbarbutton','z',18,['image':(resource(dir:'images/famfamfam',file:'report_go.png')),'href':(createLink(controller:'reports',action:'zkUserApplicationUsageTable')),'label':("User / Application Usage"),'tooltip':("UserAppPopUp,position=end_before,delay=0")],-1) printHtmlPart(11) invokeTag('toolbarbutton','z',19,['image':("/images/famfamfam/report_go.png"),'href':(createLink(controller:'reports',action:'zkFailedUserAuthenticationTable')),'label':("Failed Authentication"),'tooltip':("FailedUserAuthenticationsPopUp,position=end_before,delay=0")],-1) printHtmlPart(11) invokeTag('toolbarbutton','z',20,['image':("/images/famfamfam/report_go.png"),'href':(createLink(controller:'reports',action:'zkUniqueUserAuthenticationTable')),'label':("Unique Authentication"),'tooltip':("UniqueAuthenticationPopUp,position=end_before,delay=0")],-1) printHtmlPart(10) }) invokeTag('vbox','z',20,['align':("left")],7) printHtmlPart(10) createTagBody(7, {-> printHtmlPart(11) createClosureForHtmlPart(12, 8) invokeTag('html','z',23,[:],8) printHtmlPart(10) }) invokeTag('popup','z',23,['id':("AuthenticationPopUp")],7) printHtmlPart(10) createTagBody(7, {-> printHtmlPart(11) createClosureForHtmlPart(13, 8) invokeTag('html','z',26,[:],8) printHtmlPart(10) }) invokeTag('popup','z',26,['id':("UserAppPopUp")],7) printHtmlPart(14) createTagBody(7, {-> printHtmlPart(11) createClosureForHtmlPart(15, 8) invokeTag('html','z',29,[:],8) printHtmlPart(10) }) invokeTag('popup','z',29,['id':("FailedUserAuthenticationsPopUp")],7) printHtmlPart(10) createTagBody(7, {-> printHtmlPart(11) createClosureForHtmlPart(16, 8) invokeTag('html','z',32,[:],8) printHtmlPart(10) }) invokeTag('popup','z',32,['id':("UniqueAuthenticationPopUp")],7) printHtmlPart(17) }) invokeTag('panelchildren','z',32,['style':("padding:5px;")],6) printHtmlPart(8) }) invokeTag('panel','z',33,['width':("100%"),'border':("normal"),'title':("Audit Reports"),'style':("margin-top:5px")],5) printHtmlPart(7) }) invokeTag('vlayout','z',33,['spacing':("0")],4) printHtmlPart(6) }) invokeTag('west','z',34,['border':("0"),'size':("25%"),'flex':("true"),'width':("200px"),'margins':("5,5,5,5")],3) printHtmlPart(6) createTagBody(3, {-> printHtmlPart(7) createTagBody(4, {-> printHtmlPart(8) invokeTag('include','g',40,['view':("portal/ajaxreportwrapper.gsp"),'params':([renderer: 'renderAppUsageStatsChart', reportID: 'appusagestatschart', reportname:'Site Application Information'])],-1) printHtmlPart(8) invokeTag('include','g',41,['view':("portal/ajaxreportwrapper.gsp"),'params':([renderer: 'renderMonthlyLoginStatsChart', reportID: 'monthlyloginstatschart', reportname:'Site User Login Stats'])],-1) printHtmlPart(7) }) invokeTag('vlayout','z',41,['spacing':("0")],4) printHtmlPart(6) }) invokeTag('center','z',41,['border':("0"),'margins':("5,5,5,5")],3) printHtmlPart(6) createTagBody(3, {-> printHtmlPart(18) invokeTag('meta','g',44,['name':("app.version")],-1) printHtmlPart(19) }) invokeTag('south','z',44,['margins':("0,5,5,5"),'border':("0")],3) printHtmlPart(5) }) invokeTag('borderlayout','z',44,['height':("650px"),'width':("800px"),'sclass':("inputPanelWide")],2) printHtmlPart(1) }) invokeTag('captureBody','sitemesh',44,[:],1) printHtmlPart(20) } public static final Map JSP_TAGS = new HashMap() protected void init() { this.jspTags = JSP_TAGS } public static final String CONTENT_TYPE = 'text/html;charset=UTF-8' public static final long LAST_MODIFIED = 1377210870000L public static final String DEFAULT_CODEC = null }