2016-05-15 28 views
0

この画像TOMCATでJSFを受け入れないので、私は、Tomcatの中でJSFを使用することができ、なぜ私が理解することはできません。のApache TomcatとTOMEE

​​

私はTOMCAT 7を使用していますし、すべてが正常に動作します。私はpom.xmlにJSFの依存関係を追加しました。 TomcatでJSFを使用する場合、TomEEを使用する利点は何ですか?

+0

この表には、自分でインストールすることなくサーバーによってすでに提供されているライブラリのみが表示されています。関連:http://stackoverflow.com/questions/7295096/what-exactly-is-java-eeおよびhttp://stackoverflow.com/tags/jsf/info – BalusC

+0

これは、私が必要としないことですこのlibsをpom.xmlに追加しますか? TomEEはすでに私にそれを提供しましたか? – RonaldoLanhellas

+0

おそらく、ビルド時には依然として依存関係が必要ですが、展開時には依存関係は必要ありません。あなたがTomEEによって提供されたものとは異なるバージョンを望むのでない限り。 –

答えて

2

Tomcat、TomEE、Websphereなどのアプリケーションサーバーがあります。 これらは、JSF、Servlets、JPA、JavaMailなどのJava EE-Libのセットを提供します。

Tomcatを使用している場合は、アプリケーションにJSF-Libを提供するだけでJSFを使用できます。

Maven(pom.xml)では、JSFやJPAのように、コンパイルに必要な情報をアプリケーションに定義します。 TomEEのようなアプリケーションサーバーを使用しても、必要なものを宣言しなければならないので、コンパイルが機能します。

唯一の違いはMaven依存関係スコープです。Java EEアプリケーションサーバーを使用する場合は、Application Serverに必要なすべてのLibがあるため、providedというスコープを使用する必要があります。 Tomcatだけを使用する場合は、Libをアーティファクト(*.war -file)に含める(デフォルト)スコープcompileが必要です。

Application Serverを使用している場合は、pom.xmlのバージョンがApplication Serverで使用されているバージョンと一致している必要があります。そうでない場合、JSF 2.2用にプログラムを作成しますが、 。

+0

ありがとう、今私は理解する。 – RonaldoLanhellas