JSF 2.2、Primefaces、Tomcat 7 の依存関係を使用して Maven Web アプリケーションを作成しました。
私の JSF の実装は Mojarra 2.2.4 です。POM に次の依存関係を追加しました。
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.2.4</version>
<scope>compile</scope>
</dependency>
しかし残念ながら、私はtomcat7-maven-plugin
それに埋め込まれたTomcatに問題があります。コマンドを使用するtomcat7:run
と、webapp は問題なく起動しますが、マネージド Bean をロードしようとすると、次のエラーが表示されます。
ターゲットに到達できません。識別子 'testBean' が null に解決されました
これは、webapp が のJSF 1.x
代わりに使用していることを示していJSF 2.x
ます。のコンフィギュレーターは、faces-config.xml を必要とせずに自動的にロード/初期化されない原因となるアノテーションをJSF 1.x
認識しません。@ManagedBean
私はTomcat組み込み7.0.50を使用しています.
しかし、私は注釈を認識していませんが@ManagedBean
、マネージドビーンタグを使用してのみ機能しfaces-config.xml
ます。
JSF 2.x
Tomcat Embedded のサポートを含める方法はありmaven7-tomcat-plugin
ますか?
PS:tomcat7:run-war
動作しますが、xhtmlコード(例)をオンザフライで変更する可能性がないため、明らかに静的な実行であるため、好きではありません。