1

JSF 2.0 Web アプリケーションで、アプリケーション層のコードをビュー層の html、css、js から分離しようとしています。

アプリケーションのビュー レイヤーは、標準構造のデプロイされた WAR ファイルになります。

Java コードは、Weblogic にデプロイされたライブラリ (WEB-INF/weblogic.xml の war によって参照される) にあります。これには、クラス ファイルと多くの必要な jar のみが含まれます。

ビューレイヤーで作業している人々がアプリケーションレイヤーに直接接続することは望ましくありません。アプリケーションのfaces-config.xmlの仕様を参照ライブラリのfaces-config.xmlに通常通り含めることはできますか? これらには、例外ハンドラ ファクトリ、リソース バンドル参照、el-resolvers、リスナー、render-kit などが含まれます。

アプリケーションの構造
    -アプリ層ライブラリ
        -META-INF
            -faces-config.xml???
        -WEB-INF
            -クラス
            -lib (ここに jar)
            -web.xml
    -View-Layer アプリケーション
        -META-INF
        -WEB-INF
            -faces-config.xml
            -web.xml
            -weblogic.xml
            -weblogic-application.xml
         -その他のフォルダ

これが十分に明確でない場合は申し訳ありませんが、スタックオーバーフローに関する私の最初の質問です! 何かご不明な点がございましたら、お気軽にお問い合わせください。

4

1 に答える 1

0

はい、可能です。

ビューレイヤーとは別に、コモンズ、構成、および Java コード用のアプリ ライブラリを使用できます。この jar (ライブラリ) では、必要なものすべてを にある JSF 構成ファイル ( faces-config.xml) に置きますsrc/META-INF/faces-config.xml。私の場合、この構成ファイルには例外ハンドラ ファクトリ、リソース バンドル参照、el-resolver、リスナーがあり、weblogic に問題はありません。

ただし、留意すべき問題がいくつかあります。たとえば、3rd パーツ、レンダラー、またはコンポーネントをオーバーライドします。

サード パーティのコンポーネント ライブラリのレンダラーをオーバーライドする必要があるカスタム レンダラーは、/WEB-INF/lib の別の JAR にパックされている faces-config.xml ではなく、webapp の独自の faces-config.xml に登録する必要があります。JAR ファイルの読み込み順序は指定されていないため、カスタム レンダラーが、オーバーライドしたいサード パーティ コンポーネント ライブラリの前に読み込まれ、登録されることがあります。

私は、あなたの疑問のいくつかを解決することを願っています...

于 2014-05-26T15:14:38.603 に答える