I also have a app, using Trinidad and Tomahwk

here the web.xml goes:

<?xml version = '1.0' encoding = 'ISO-8859-1'?>
<!--
 Copyright 2006 The Apache Software Foundation.

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<web-app 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";
        version="2.4">

 <!-- Trinidad has its own ViewHandler, which is a "decorating"
      view handler - for example, it needs to wrap methods like renderView()
      to perform some extra pre- and post-handling.  Facelets, on the other
      hand, is more of a true ViewHandler - it actually implements
      renderView() (yeah, it decorates too, but forget about that
      for a second).  As a result, the world is a better place if
      the Trinidad ViewHandler runs around the Facelets ViewHandler.
      But since Facelets is registered in WEB-INF/faces-config.xml,
      and Trinidad's is registered from META-INF/faces-config.xml in its
      JAR, exactly the opposite happens as per the JSF spec.

      Hence, the following config parameter, which Trinidad
      exposes to allow pushing a ViewHandler inside
      of ours.  FWIW, you retain the entire delegation stack -
      just flipped around a bit - so that Facelets still decorates
      the standard ViewHandler, and therefore you've still got
      JSP support.
 -->
 <context-param>
 
<param-name>org.apache.myfaces.trinidadinternal.DISABLE_CONTENT_COMPRESSION</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>

 <!-- Use Documents Saved as *.xhtml -->
 <context-param>
   <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
   <param-value>.xhtml</param-value>
 </context-param>

  <context-param>
  <param-name>facelets.LIBRARIES</param-name>
  <param-value>/WEB-INF/tomahawk.taglib.xml</param-value>
   </context-param>

 <!-- Use client-side state saving.  In Trinidad, it is an
      optimized, token-based mechanism that is almost always a
      better choice than the standard JSF server-side state saving. -->
 <context-param>
   <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
   <param-value>client</param-value>
   <!--param-value>server</param-value-->
 </context-param>

 <!-- Trinidad by default uses an optimized client-side state saving
      mechanism. To disable that, uncomment the following -->
 <!--context-param>
   <param-name>org.apache.myfaces.trinidad.CLIENT_STATE_METHOD</param-name>
   <param-value>all</param-value>
 </context-param-->

 <!-- Trinidad also supports an optimized strategy for caching some
  view state at an application level, which significantly improves
  scalability.  However, it makes it harder to develop (updates to
  pages will not be noticed until the server is restarted), and in
  some rare cases cannot be used for some pages (see Trinidad
  documentation for more information) -->
 <context-param>
   
<param-name>org.apache.myfaces.trinidad.USE_APPLICATION_VIEW_CACHE</param-name>
   <param-value>false</param-value>
 </context-param>

 <!-- If this parameter is enabled, Trinidad will automatically
      check the modification date of your JSPs, and discard saved
      state when they change;  this makes development easier,
      but adds overhead that should be avoided when your application
      is deployed -->
 <context-param>
   <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
   <param-value>true</param-value>
 </context-param>

 <!-- Enables Change Persistence at a session scope.  By default,
      Change Persistence is entirely disabled. The ChangeManager is
      an API, which can persist component modifications (like,
      is a showDetail or tree expanded or collapsed). For providing
      a custom Change Persistence implementation inherit from the
      Trinidad API's ChangeManager class. As the value you have
      to use the fullqualified class name. -->
 <context-param>
   <param-name>org.apache.myfaces.trinidad.CHANGE_PERSISTENCE</param-name>
   <param-value>session</param-value>
 </context-param>

 <filter>
   <filter-name>trinidad</filter-name>
   
<filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
 </filter>

 <filter>
          <filter-name>MyFacesExtensionsFilter</filter-name>
          
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
     <init-param>
       <param-name>maxFileSize</param-name>
       <param-value>20m</param-value>
     </init-param>
 </filter>

 <filter-mapping>
   <filter-name>trinidad</filter-name>
   <servlet-name>faces</servlet-name>
 </filter-mapping>


<!-- extension mapping for adding <script/>, <link/>, and other
resource tags to JSF-pages  -->
 <filter-mapping>
   <filter-name>MyFacesExtensionsFilter</filter-name>
   <!-- servlet-name must match the name of your
javax.faces.webapp.FacesServlet entry -->
   <servlet-name>faces</servlet-name>
 </filter-mapping>

 <!-- extension mapping for serving page-independent resources
(javascript, stylesheets, images, etc.)  -->
 <filter-mapping>
   <filter-name>MyFacesExtensionsFilter</filter-name>
   <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
 </filter-mapping>

 <!-- Listener, to allow Jetty serving MyFaces apps -->
 <listener>
   
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
 </listener>

 <!-- Faces Servlet -->
 <servlet>
   <servlet-name>faces</servlet-name>
   <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
 </servlet>

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

 <!-- Faces Servlet Mappings -->
 <servlet-mapping>
   <servlet-name>faces</servlet-name>
   <url-pattern>/faces/*</url-pattern>
 </servlet-mapping>

 <servlet-mapping>
   <servlet-name>resources</servlet-name>
   <url-pattern>/adf/*</url-pattern>
 </servlet-mapping>


 <!-- Welcome Files -->
 <welcome-file-list>
   <welcome-file>index.html</welcome-file>
 </welcome-file-list>

</web-app>

On 1/25/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:



Hi,

I have a web application that used MyFaces 1.1.3 with Tomahawk 1.1.3.
I would like used Trinidad with my application but that seems imcompatible.

After have configure Trinidad in my web.xml file and my faces-config.xml.
see below

in web.xml add
<filter>
      <filter-name>trinidad</filter-name>
      <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</
filter-class>
</filter>

 <filter-mapping>
      <filter-name>trinidad</filter-name>
      <!-- This assumes that the FacesServlet has been registered -->
      <!-- under the name "faces" -->
      <servlet-name>Faces Servlet</servlet-name>
 </filter-mapping>

<servlet>
          <servlet-name>resources</servlet-name>
      <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</
servlet-class>
 </servlet>
<servlet-mapping>
      <servlet-name>resources</servlet-name>
            <url-pattern>/adf/*</url-pattern>
</servlet-mapping>

in faces-config.xml add
<default-render-kit-id>
                  org.apache.myfaces.trinidad.core
</default-render-kit-id>

When I executed my web application I have an errror on the Rendering:

javax.faces.FacesException: ServletException in
'/WEB-INF/jsp/common/menu.jsp': No RenderingContext
      at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:422)
      at
org.apache.myfaces.trinidadinternal.context.ExternalContextDecorator.dispatch(ExternalContextDecorator.java:44)
      at
org.apache.myfaces.trinidadinternal.context.FacesContextFactoryImpl$OverrideDispatch.dispatch(FacesContextFactoryImpl.java:238)
      at
org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:233)
      at
org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:219)
      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:329)
      at
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
      at
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:216)
      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.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
      at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at
dfi.cms.hermes.webapp.filter.AuthorizationFilter.doFilter(AuthorizationFilter.java:101)
      at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174)
      at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      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.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
      at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      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:667)
      at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
      at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
      at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.jasper.JasperException: ServletException in
'/WEB-INF/jsp/common/menu.jsp': No RenderingContext
      at
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
      at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
      at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:416)
      ... 37 more

Do you have any idea for use MyFaces components and Trinidad Components
together ?

Regards,
Guillaume Albini

*************************************************************************
This message and any attachments (the "message") are confidential and intended 
solely for the addressee(s).
Any unauthorised use or dissemination is prohibited. E-mails are susceptible to 
alteration.
Neither SOCIETE GENERALE nor any of its subsidiaries or affiliates shall be 
liable for the message if altered, changed or
falsified.
                              ************
Ce message et toutes les pieces jointes (ci-apres le "message") sont 
confidentiels et etablis a l'intention exclusive de ses
destinataires. Toute utilisation ou diffusion non autorisee est interdite. Tout 
message electronique est susceptible d'alteration.
La SOCIETE GENERALE et ses filiales declinent toute responsabilite au titre de 
ce message s'il a ete altere, deforme ou falsifie.
*************************************************************************



--
Matthias Wessendorf
http://tinyurl.com/fmywh

further stuff:
blog: http://jroller.com/page/mwessendorf
mail: mwessendorf-at-gmail-dot-com

Reply via email to