You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-user@incubator.apache.org by "fabrizio.boco@tin.it" <fa...@tin.it> on 2007/03/13 08:13:34 UTC

SEAM Integration - No RenderingContext

Hi,

I am using Seam 1.2.0.PATCH1 and trinidad (1.0.1-incubating).

These are my web.xml and faces-config.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_5.xsd">

	<context-param>
		<param-
name>facelets.SKIP_COMMENTS</param-name>
		<param-value>true</param-
value>
	</context-param>	

	<context-param>
		<param-name>javax.faces.
DEFAULT_SUFFIX</param-name>
		<param-value>.xhtml</param-value>
	
</context-param>
	<context-param>
		<param-name>facelets.
REFRESH_PERIOD</param-name>
		<param-value>2</param-value>
	</context-
param>
	<context-param>
		<param-name>facelets.DEVELOPMENT</param-
name>
		<param-value>true</param-value>
	</context-param>
	<context-
param>
		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
		
<param-value>client</param-value>
	</context-param>
	<context-param>
		
<param-name>com.sun.faces.validateXml</param-name>
		<param-
value>true</param-value>
	</context-param>
	<context-param>
		<param-
name>com.sun.faces.verifyObjects</param-name>
		<param-
value>true</param-value>
	</context-param>
	

	<context-param>
		<param-
name>org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER</param-name>
		
<param-value>com.sun.facelets.FaceletViewHandler</param-value>
	
</context-param>


	<!-- Seam -->

	<listener>
		<listener-class>org.
jboss.seam.servlet.SeamListener</listener-class>
	</listener>

	<!-- 
MyFaces -->

	<listener>
		<listener-class>org.apache.myfaces.webapp.
StartupServletContextListener</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>

	<!-- resource loader servlet 
-->
	<servlet>
		<servlet-name>resources</servlet-name>
		<servlet-
class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-
class>
	</servlet>

	<servlet-mapping>
		<servlet-name>Faces 
Servlet</servlet-name>
		<url-pattern>*.jsf</url-pattern>
	</servlet-
mapping>
	<servlet-mapping>
		<servlet-name>resources</servlet-name>
		
<url-pattern>/adf/*</url-pattern>
	</servlet-mapping>
	<!-- Faces 
Servlet Mapping -->
	<servlet-mapping>
		<servlet-name>Faces 
Servlet</servlet-name>
		<url-pattern>*.seam</url-pattern>
	</servlet-
mapping>

	<filter>
		<filter-name>trinidad</filter-name>
		<filter-
class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
	
</filter>
 
	<filter-mapping>
		<filter-name>trinidad</filter-name>
		
<servlet-name>Faces Servlet</servlet-name>
	</filter-mapping>


	
<context-param>
		<param-name>org.jboss.seam.core.init.debug</param-
name>
		<param-value>true</param-value>
	</context-param>

	<welcome-
file-list>
		<welcome-file>Index.jsp</welcome-file>
	</welcome-file-
list>

</web-app>


<!DOCTYPE faces-config PUBLIC
	  "-//Sun 
Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
	  "http:
//java.sun.com/dtd/web-facesconfig_1_0.dtd">
<faces-config>
	
	
<application>
		
		<default-render-kit-id>org.apache.myfaces.trinidad.
core</default-render-kit-id>
		
		<message-bundle>messages</message-
bundle>
				
		<locale-config>
			<default-locale>it_IT</default-
locale>
			<supported-locale>it</supported-locale>
		</locale-config>
		
		
	</application>
	
	<lifecycle>
		<phase-listener>org.jboss.seam.jsf.
TransactionalSeamPhaseListener</phase-listener>
	</lifecycle>
	
</faces-
config>

Everything works fine.

To use security EL functions in SEAM I 
have to put the following in the faces-config.xml

<application>
    
<view-handler>org.jboss.seam.ui.facelet.SeamFaceletViewHandler</view-
handler>
</application

When I do that, I get the following error 
calling the Login.xml page:

java.lang.IllegalStateException: No 
RenderingContext
	at org.apache.myfaces.trinidad.render.CoreRenderer.
encodeBegin(CoreRenderer.java:159)
	at org.apache.myfaces.trinidad.
component.UIXComponentBase.encodeBegin(UIXComponentBase.java:671)
	at 
com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive
(ComponentSupport.java:242)
	at com.sun.facelets.tag.jsf.
ComponentSupport.encodeRecursive(ComponentSupport.java:249)
	at com.sun.
facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573)
	at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
384)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:
138)
	at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.
catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:173)
	at org.apache.myfaces.trinidadinternal.webapp.
TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:210)
	at org.
apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl
(TrinidadFilterImpl.java:167)
	at org.apache.myfaces.trinidadinternal.
webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:140)
	at org.
apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.
java:93)
	at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:202)
	at org.apache.
catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:173)
	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter
(ReplyHeaderFilter.java:96)
	at org.apache.catalina.core.
ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
202)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.
StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.
apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
java:178)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.
invoke(SecurityAssociationValve.java:175)
	at org.jboss.web.tomcat.
security.JaccContextValve.invoke(JaccContextValve.java:74)
	at org.
apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
126)
	at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:105)
	at org.jboss.web.tomcat.tc5.jca.
CachedConnectionValve.invoke(CachedConnectionValve.java:156)
	at org.
apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service
(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.
process(Http11Processor.java:869)
	at org.apache.coyote.http11.
Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.
PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.
tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.
java:112)
	at java.lang.Thread.run(Thread.java:595)

How can I fix the 
problem ?

Thank you very much.

Regards 

Fab.



Re: SEAM Integration - No RenderingContext

Posted by Chris Lowe <ch...@gmail.com>.
Hi,

Maybe this link will help?

http://www.jboss.com/index.html?module=bb&op=viewtopic&t=97573

Cheers,

Chris.


On 13/03/07, fabrizio.boco@tin.it <fa...@tin.it> wrote:
>
> Hi,
>
> I am using Seam 1.2.0.PATCH1 and trinidad (1.0.1-incubating).
>
> These are my web.xml and faces-config.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_5.xsd">
>
>         <context-param>
>                 <param-
> name>facelets.SKIP_COMMENTS</param-name>
>                 <param-value>true</param-
> value>
>         </context-param>
>
>         <context-param>
>                 <param-name>javax.faces.
> DEFAULT_SUFFIX</param-name>
>                 <param-value>.xhtml</param-value>
>
> </context-param>
>         <context-param>
>                 <param-name>facelets.
> REFRESH_PERIOD</param-name>
>                 <param-value>2</param-value>
>         </context-
> param>
>         <context-param>
>                 <param-name>facelets.DEVELOPMENT</param-
> name>
>                 <param-value>true</param-value>
>         </context-param>
>         <context-
> param>
>                 <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
>
> <param-value>client</param-value>
>         </context-param>
>         <context-param>
>
> <param-name>com.sun.faces.validateXml</param-name>
>                 <param-
> value>true</param-value>
>         </context-param>
>         <context-param>
>                 <param-
> name>com.sun.faces.verifyObjects</param-name>
>                 <param-
> value>true</param-value>
>         </context-param>
>
>
>         <context-param>
>                 <param-
> name>org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER</param-name>
>
> <param-value>com.sun.facelets.FaceletViewHandler</param-value>
>
> </context-param>
>
>
>         <!-- Seam -->
>
>         <listener>
>                 <listener-class>org.
> jboss.seam.servlet.SeamListener</listener-class>
>         </listener>
>
>         <!--
> MyFaces -->
>
>         <listener>
>                 <listener-class>org.apache.myfaces.webapp.
> StartupServletContextListener</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>
>
>         <!-- resource loader servlet
> -->
>         <servlet>
>                 <servlet-name>resources</servlet-name>
>                 <servlet-
> class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-
> class>
>         </servlet>
>
>         <servlet-mapping>
>                 <servlet-name>Faces
> Servlet</servlet-name>
>                 <url-pattern>*.jsf</url-pattern>
>         </servlet-
> mapping>
>         <servlet-mapping>
>                 <servlet-name>resources</servlet-name>
>
> <url-pattern>/adf/*</url-pattern>
>         </servlet-mapping>
>         <!-- Faces
> Servlet Mapping -->
>         <servlet-mapping>
>                 <servlet-name>Faces
> Servlet</servlet-name>
>                 <url-pattern>*.seam</url-pattern>
>         </servlet-
> mapping>
>
>         <filter>
>                 <filter-name>trinidad</filter-name>
>                 <filter-
> class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
>
> </filter>
>
>         <filter-mapping>
>                 <filter-name>trinidad</filter-name>
>
> <servlet-name>Faces Servlet</servlet-name>
>         </filter-mapping>
>
>
>
> <context-param>
>                 <param-name>org.jboss.seam.core.init.debug</param-
> name>
>                 <param-value>true</param-value>
>         </context-param>
>
>         <welcome-
> file-list>
>                 <welcome-file>Index.jsp</welcome-file>
>         </welcome-file-
> list>
>
> </web-app>
>
>
> <!DOCTYPE faces-config PUBLIC
>           "-//Sun
> Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
>           "http:
> //java.sun.com/dtd/web-facesconfig_1_0.dtd">
> <faces-config>
>
>
> <application>
>
>                 <default-render-kit-id>org.apache.myfaces.trinidad.
> core</default-render-kit-id>
>
>                 <message-bundle>messages</message-
> bundle>
>
>                 <locale-config>
>                         <default-locale>it_IT</default-
> locale>
>                         <supported-locale>it</supported-locale>
>                 </locale-config>
>
>
>         </application>
>
>         <lifecycle>
>                 <phase-listener>org.jboss.seam.jsf.
> TransactionalSeamPhaseListener</phase-listener>
>         </lifecycle>
>
> </faces-
> config>
>
> Everything works fine.
>
> To use security EL functions in SEAM I
> have to put the following in the faces-config.xml
>
> <application>
>
> <view-handler>org.jboss.seam.ui.facelet.SeamFaceletViewHandler</view-
> handler>
> </application
>
> When I do that, I get the following error
> calling the Login.xml page:
>
> java.lang.IllegalStateException: No
> RenderingContext
>         at org.apache.myfaces.trinidad.render.CoreRenderer.
> encodeBegin(CoreRenderer.java:159)
>         at org.apache.myfaces.trinidad.
> component.UIXComponentBase.encodeBegin(UIXComponentBase.java:671)
>         at
> com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive
> (ComponentSupport.java:242)
>         at com.sun.facelets.tag.jsf.
> ComponentSupport.encodeRecursive(ComponentSupport.java:249)
>         at com.sun.
> facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573)
>         at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
> 384)
>         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:
> 138)
>         at org.apache.catalina.core.ApplicationFilterChain.
> internalDoFilter(ApplicationFilterChain.java:252)
>         at org.apache.
> catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
> java:173)
>         at org.apache.myfaces.trinidadinternal.webapp.
> TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:210)
>         at org.
> apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl
> (TrinidadFilterImpl.java:167)
>         at org.apache.myfaces.trinidadinternal.
> webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:140)
>         at org.
> apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.
> java:93)
>         at org.apache.catalina.core.ApplicationFilterChain.
> internalDoFilter(ApplicationFilterChain.java:202)
>         at org.apache.
> catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
> java:173)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter
> (ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.
> ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
> 202)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter
> (ApplicationFilterChain.java:173)
>         at org.apache.catalina.core.
> StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>         at org.
> apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
> java:178)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.
> invoke(SecurityAssociationValve.java:175)
>         at org.jboss.web.tomcat.
> security.JaccContextValve.invoke(JaccContextValve.java:74)
>         at org.
> apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
> 126)
>         at org.apache.catalina.valves.ErrorReportValve.invoke
> (ErrorReportValve.java:105)
>         at org.jboss.web.tomcat.tc5.jca.
> CachedConnectionValve.invoke(CachedConnectionValve.java:156)
>         at org.
> apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:107)
>         at org.apache.catalina.connector.CoyoteAdapter.service
> (CoyoteAdapter.java:148)
>         at org.apache.coyote.http11.Http11Processor.
> process(Http11Processor.java:869)
>         at org.apache.coyote.http11.
> Http11BaseProtocol$Http11ConnectionHandler.processConnection
> (Http11BaseProtocol.java:664)
>         at org.apache.tomcat.util.net.
> PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>         at org.apache.
> tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.
> java:112)
>         at java.lang.Thread.run(Thread.java:595)
>
> How can I fix the
> problem ?
>
> Thank you very much.
>
> Regards
>
> Fab.
>
>
>