0

Mojarra から Myfaces に切り替えました。ほとんどの場合、それほど面倒ではありませんが、ナビゲーション ルールが以前のように機能しません。ナビゲーションの場合、リダイレクトに問題があります:

    <navigation-case>
        <from-outcome>test.edit</from-outcome>
        <to-view-id>/test.xhtml</to-view-id>
        <redirect/>
    </navigation-case>

以下のようなコマンド リンク ナビゲーションでは、403 エラー (アクセスが拒否されました) が発生します。

 <h:commandLink value="Add" id="test" action="test.edit"/>

この特定のケースでは、ブラウザーは (test.jsf ではなく) test.xhtml にリダイレクトしようとしました。これは、web.xml のセキュリティ制約によって防止されます。もちろん、セキュリティ制約を削除すると、生の xhtml が提供されます。

リダイレクトを削除すると問題なく動作しますが、もちろんブラウザの URL は変更されません。

また、以前は次のような無効な結果でナビゲーションを行うことができました。

<navigation-rule>
    <from-view-id>/test.xhtml</from-view-id>
    <navigation-case>
        <from-action>#{bean.save}</from-action>
        <if>#{true}</if>
        <to-view-id>/list.xhtml</to-view-id>
        <redirect/>
    </navigation-case>
</navigation-rule>

ただし、リストを動的に表示するために ajax リクエストが送信されると (bean.save メソッドを呼び出さずに)、ページがリダイレクトされます。

4

1 に答える 1

0

MojarraからMyFacesに移動するときに問題が発生した場合は、MyFacesユーザーのメーリングリストにメールを送信することをお勧めします。バグがある場合は、問題を解決できる可能性が高くなります。最新バージョンを試してください(2011年6月現在は2.0.7 / 2.1.1です)。MyFacesメーリングリストを参照してください

最初のものはバグのようですが、web.xml構成に関連する詳細情報が必要です。2つ目が予想されます。

バグの場合は、ここで問題を提出できますMyFaces Issue Tracker

于 2011-06-25T04:29:34.057 に答える