You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by logancillo <al...@gmail.com> on 2007/10/11 12:39:36 UTC

about an infinite loop

Hello to all, I am taking a demo with MyFaces 1.1.4, spring 2.0.6 and shale
tiles 1.0.4. The problem is that on having deploied the war, an infinite
loop appears! If someone me could help to understanding that`s happening, i
would be very happy.

stack trace:

        at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
de.mindmatters.faces.lifecycle.RenderResponsePhase.executePhase(Rende
rResponsePhase.java:45)
        at
de.mindmatters.faces.lifecycle.AbstractPhase.execute(AbstractPhase.ja
va:37)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.executePhase(LifecycleIm
pl.java:166)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.jav
a:226)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487
)
        at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:3
63)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.jav
a:216)
        at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:1
81)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:7
12)
        at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:406)

        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:268)
        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
        at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
h(ServletExternalContextImpl.java:416)
        at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
de.mindmatters.faces.lifecycle.RenderResponsePhase.executePhase(Rende
rResponsePhase.java:45)
        at
de.mindmatters.faces.lifecycle.AbstractPhase.execute(AbstractPhase.ja
va:37)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.executePhase(LifecycleIm
pl.java:166)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.jav
a:226)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487
)
        at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:3
63)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.jav
a:216)
        at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:1
81)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:7
12)
        at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:406)

        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:268)
        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
        at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
h(ServletExternalContextImpl.java:416)
        at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
de.mindmatters.faces.lifecycle.RenderResponsePhase.executePhase(Rende
rResponsePhase.java:45)
        at
de.mindmatters.faces.lifecycle.AbstractPhase.execute(AbstractPhase.ja
va:37)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.executePhase(LifecycleIm
pl.java:166)
        at
de.mindmatters.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.jav
a:226)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487
)
        at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:3
63)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.jav
a:216)
        at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:1
81)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:7
12)
        at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:406)

        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:268)
        at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
        at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatc
h(ServletExternalContextImpl.java:416)
        at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234)
        at
org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)

i think that there is recursive call to renderView at at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspV
iewHandlerImpl.java:234) 

org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapp
er.java:101)
        at
org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandle
r.java:221)
        at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.j
ava:176)

what do you think?

this is /server/lib on tomcat app
antlr-2.7.2
asm-1.5.3
asm-attrs-1.5.3
avalon-framework-4.1.3
catalina
catalina-ant
catalina-ant-jmx
catalina-cluster
catalina-optional
catalina-storeconfig
cglib-2.1_3
commons-beanutils-1.6.1
commons-beanutils-1.7.0
commons-codec-1.3
commons-collections-3.1
commons-digester-1.6
commons-el-1.0
commons-fileupload-1.0
commons-lang-2.1
commons-logging-1.1
commons-modeler
commons-validator-1.1.4
dbunit-2.2
dozer-4.0
jdbc-stdext-2.0
jsf-spring-4.0.3
jstl-1.1.2
junit-4.4
junit-addons-1.4
log4j-1.2.12
logkit-1.0.1
myfaces-api-1.1.4
myfaces-impl-1.1.4
oro-2.0.7
oscache-2.3
poi-2.5.1-final-20040804
servlet-api-2.3
servlets-cgi.renametojar
servlets-default
servlets-invoker
servlets-webdav
spring-2.0.6
struts-1.1
struts-1.2.9
struts-legacy-1.1
tomahawk-1.1.6
tomahawk-sandbox-1.1.6
tomcat-ajp
tomcat-apr
tomcat-coyote
tomcat-http
tomcat-jkstatus-ant
tomcat-util
xalan-2.5.1
xercesImpl-2.6.2
xml-apis-1.0.b2
xmlParserAPIs-2.6.2

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    
    <context-param>
        <param-name>contextConfigLocation</param-name>
	<param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
    <context-param>
    <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
        <param-value>.jsp</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.verifyObjects</param-name>
        <param-value>true</param-value>
        <description>
            Set this flag to true if you want the JSF
            Reference Implementation to verify that all of the application
            objects you have configured (components, converters,
            renderers, and validators) can be successfully created.
            Default value is false.
            Poner a false cuando se ponga en produccion.
        </description>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.validateXml</param-name>
        <param-value>true</param-value>
        <description>
            Set this flag to true if you want the JSF
            Reference Implementation to validate the XML in your
            faces-config.xml resources against the DTD.  Default
            value is false.
            Poner a false cuando se ponga en produccion.
        </description>
    </context-param>
    <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
        <description>
            Indica donde queremos guardar el estado de la aplicacion.
            Poner a server cuando se ponga en produccion. antes probarlo!
        </description>
    </context-param>
    <context-param>
        <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
        <param-value>true</param-value>
        <description>
            Este parametro le dice a MyFaces si se va a permitir renderizar
javascript.
            Default: "true"
        </description>
    </context-param>
    <context-param>
        <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
        <param-value>true</param-value>
        <description>
            si es verdadero, el renderizado html estara formateado,
permitiendo que se pueda leer 
            bien. En la fase de desarrollo, estara a true, cuando este en
produccion, estara a false.
        </description>
    </context-param>
    <context-param>
        <param-name>definitions-config</param-name>
        <param-value>/WEB-INF/tiles-defs.xml</param-value>
    </context-param>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
	<welcome-file>
            index.jsp
        </welcome-file>
    </welcome-file-list>
    
    
    <!-- Listener, that does all the startup work (configuration, init). -->
    <listener>
       
<listener-class>org.apache.tiles.listener.TilesListener</listener-class>
    </listener>
    <!-- listener de spring-->
    <listener>  
       
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>  
    </listener>
    <listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>
    <filter>
        <filter-name>MyFacesExtensionsFilter</filter-name>
       
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
    </filter>
</web-app>

tiles-defs.xml

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">

<tiles-definitions>

    <definition name="/Base" path="/paginas/plantillaBasica.jsp">
		<put name="titulo" value="Base"/>
                <put name="cabecera" value="/cabecera.jsp"/>
		<put name="cuerpo" value="base"/>
                <put name="seo" value="seo"/>
		<put name="pie" value="base"/>
    </definition>

    <definition name="/busquedaDosCajas" extends="/Base">		
		<put name="titulo" value="Busqueda con dos cajas" type="string"/>
		<put name="cuerpo" value="/paginas/cuerpoDosCajas.jsp" type="template"/>  
    </definition>
    
</tiles-definitions>

faces-config.xml

<?xml version='1.0' encoding='UTF-8'?>


<!DOCTYPE faces-config PUBLIC
  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<!-- =========== FULL CONFIGURATION FILE ==================================
-->

<faces-config>
    <!-- Tiles Integration -->
    <application>    
        <view-handler>org.apache.shale.tiles.TilesViewHandler</view-handler>
    </application>
    <!-- El mantenimiento del bean proxy se delega al contenedor de
spring-->
     <application>  
         <variable-resolver>  
             org.springframework.web.jsf.DelegatingVariableResolver
         </variable-resolver>  
     </application> 
     
     <!-- el unico idioma permitido es el espaƱol.-->
     <application>
        <locale-config>
            <default-locale>es</default-locale>
        </locale-config>
     </application>
    
     <!--
      - navigation rules
      -->
    <navigation-rule>
        <from-view-id>*</from-view-id>
        <navigation-case>
            <from-outcome>succesNoJS</from-outcome>
            <to-view-id>/paginas/listado.jsp</to-view-id>
        </navigation-case>
        <navigation-case>
            <from-outcome>error</from-outcome>
            <to-view-id>error.jsp</to-view-id>
        </navigation-case>
    </navigation-rule>
    
    <managed-pages>
        
    </managed-pages>
</faces-config>

pls help

-- 
View this message in context: http://www.nabble.com/about-an-infinite-loop-tf4606424.html#a13153298
Sent from the MyFaces - Users mailing list archive at Nabble.com.