2012-08-24 3 views
0

jsf1 프로젝트를 jsf2로 마이그레이션했습니다.
webapp는 Tomcat 7에서 실행되는 Myfaces 2.1.8, Tomahawk20-1.1.13 및 ajax4jsf-1.1.1을 기반으로합니다. 페이지의 일부를 Facelets로 업그레이드하고 Primeface도 플러그인하기를 원했습니다.
jsf core 태그를 사용하면 facelets 페이지가 렌더링되지 않습니다. 브라우저에서 빈 페이지가 표시되고 로그에도 오류가 표시되지 않습니다.
페이지가 순수한 xhtml 인 경우 렌더링이 잘됩니다. Faces 서블릿이 * .jsf 매핑을 사용하여 처음에는 .xhtml 페이지를 찾아야 만하는 경우에 발생합니다. 맞습니까?
도움이 될 것입니다.
facelets와 ajax4jsf는 공존 할 수없는 것처럼 보입니다.Facelets 업그레이드 - Myfaces 2.0, Tomahawk, ajax4jsf - Facelets 페이지가 렌더링되지 않음

답변

0

페이지 같은 것을 포함해야 .xhtml 확장하여 web.xml에있는 경우 :

<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>*.xhtml</url-pattern> 
</servlet-mapping> 

당신이 URL 패턴으로 *.jsf을 가지고 페이지가 .xhtml 확장이있는 경우,이 페이지가 '돈 것이 명백하다 렌더링되지 않습니다. 즉, url-pattern은 렌더링 될 페이지와 일치해야합니다.

+0

나는 그 역시 시도해, 동일한 문제를 얻는다. ajax4jsf jar를 제거하면 Facelets 페이지가 렌더링됩니다. –