WEB开发网
开发学院WEB开发Jsp Jboss中Myfaces与Sitemesh的集成 阅读

Jboss中Myfaces与Sitemesh的集成

 2008-01-05 10:07:39 来源:WEB开发网   
核心提示:想要在Myfaces项目中使用Sitemesh, 结果发现Jsf的标准UI没有问题,可使用了tomahawk的组件却显示不出来,Jboss中Myfaces与Sitemesh的集成,是什么原因呢? 原来是因为tomahawk使用了Filter(ExtensionsFilter)来实现,Sitemesh也使用Filter来

想要在Myfaces项目中使用Sitemesh, 结果发现Jsf的标准UI没有问题,可使用了tomahawk的组件却显示不出来。是什么原因呢? 
  原来是因为tomahawk使用了Filter(ExtensionsFilter)来实现,Sitemesh也使用Filter来实现(太美丽了),这就存在一个谁先谁后的问题了。解决方法:
  首先,把sitemesh的filter map放到最后。然后把tomahawkr的ExtensionsFilter改为如下:
  <filter-mapping>
     <filter-name>MyFacesExtensionsFilter</filter-name>
     <url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
   </filter-mapping>

   <filter-mapping>
     <filter-name>MyFacesExtensionsFilter</filter-name>
     <url-pattern>*.faces</url-pattern>
   </filter-mapping>
  注重:/faces/myFacesExtensionResource/*在上面,对应的也要修改myfaces的servlet-mapping,如下:
  <servlet-mapping>
     <servlet-name>Faces Servlet</servlet-name>
     <url-pattern>*.faces</url-pattern>
   </servlet-mapping>
  
   <servlet-mapping>
     <servlet-name>Faces Servlet</servlet-name>
     <url-pattern>*.jsf</url-pattern>
   </servlet-mapping>
*.jsf这一项是要加的(我实际上只使用*.faces),不然过不去的。


Tags:Jboss Myfaces Sitemesh

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接