jsf1 プロジェクトを jsf2 に移行しました。
webapp は Myfaces 2.1.8 、 Tomahawk20-1.1.13 、 ajax4jsf-1.1.1 に基づいており、Tomcat 7 で動作します。すべてうまく機能するので、ページの一部を facelets にアップグレードし、Primefaces もプラグインしたいと考えました。
問題は、jsf コア タグを使用すると facelets ページがレンダリングされないことです。ブラウザには空白のページが表示され、ログにもエラーは表示されません。
ページが純粋な xhtml の場合、問題なく表示されます。これは、Faces サーブレットがまったく機能しない場合に発生することを知っていますが、*.jsf のマッピングでは、最初に .xhtml ページを探す必要がありますよね?
どんな助けでも大歓迎です。
facelets と ajax4jsf は共存できないようです。
1 に答える
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>
*.jsf
as url-pattern があり、ページに拡張子がある場合.xhtml
、ページがレンダリングされないことは明らかです。つまり、url-pattern はレンダリングされるページと一致する必要があります。
于 2012-08-25T11:20:43.970 に答える