2

スタイルシートが最初の JSF ページに適用されません。最初の JSF ページに転送する index.jsp があります。

<html>
  <head></head>
  <body>
    <jsp:forward page="./start.jsf" />
  </body>
</html>

start.jsf ではスタイル シートは適用されませんが、2 番目のページに移動すると、スタイル シートが完全に適用されます。

2 番目のページは以前の最初のページで、同じ動作をしました。変更がなければ、2 ページ目は行の最初のページでない限り正常に機能します。

したがって、CSS とページ自体が正しい必要があります。構成の問題だと思います。

何か案は?

4

2 に答える 2

3

を呼び出す URL を使用してインデックス ページを呼び出す必要がありますFacesServlet。つまり、JSF の作業を担当します。index.jsfしたがって、の代わりに呼び出す必要がありますindex.jsp

ただし、このハックなインデックス ページを完全に取り除き、代わりにstart.jsfas <welcome-file>inを定義することをお勧めしweb.xmlます。

<welcome-file-list>
    <welcome-file>start.jsf</welcome-file>
</welcome-file-list>

ファイルの隣の同じフォルダーに空のファイル 提供して、インデックス ページが実際に存在することをサーブレット コンテナがだまされるようにします (つまり、デフォルトでは、インデックス ページのサーブレット マッピングをチェックしません)。start.jsfstart.jsp

于 2011-05-18T14:47:31.753 に答える
0

転送の代わりにリダイレクトを使用してみてください。jsp で次のように実行できます。

<%  response.setStatus(301);
    response.setHeader("Location", "/start.jsf?" + request.getQueryString());           
response.setHeader("Connection", "close");
%>

または使用

     response.sendRedirect("/start.jsf?" + request.getQueryString());

問題を解決する最善の方法ではありません。私はプロジェクトで tuckey urlrewrite を使用しています:

    <urlrewrite>
    ...
      <rule enabled="true">
        <from>^/$</from>
        <to last="true">/index.jsf</to>
      </rule>   
    ...
   </urlrewrite>
于 2011-05-18T15:17:02.733 に答える