そのため、バンドルされているmojarra2.1.6に関連する可能性のあるいくつかの問題にうんざりしました。
そこで、2.1.17を試してみることにしました。
削除
C:\glassfish3\glassfish\domains\domain1\osgi-cache
と交換
C:\glassfish3\glassfish\modules\javax.faces.jar
ここで見つけたもので
サーバーをどのように再起動しても、Eclipseなどからクリーンデプロイを実行します(Eclipseを介してサーバーとアプリの両方を追加で削除します)
サーバーログに次のように表示されます:(
[#|2013-02-03T13:22:42.172+0100|INFO|glassfish3.1.2|javax.enterprise.resource.webcontainer.jsf.config|_ThreadID=1;_ThreadName=Thread-2;|Initializing Mojarra 2.1.6 (SNAPSHOT 20111206) for context '/MyApp'|#]
それほど簡単に諦めないで、代わりにこの記事をWebアプリにバンドルするためにこの記事に従いました
glassfish-web.xmlの更新
<class-loader delegate="false" />
<property name="useBundledJsf" value="true"/>
pom.xmlの更新
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.1.17</version>
</dependency>
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>weld-integration</artifactId>
<version>3.2-b06</version>
<exclusions>
<exclusion>
<artifactId>*</artifactId>
<groupId>*</groupId>
</exclusion>
</exclusions>
</dependency>
この種の作品:
INFO: Initializing Mojarra 2.1.17 ( 20130107-1935 https://svn.java.net/svn/mojarra~svn/tags/2.1.17@11335) for context '/MyApp'
しかし、JSFマネージドBeanにEJBを挿入できません。質問は、最新のmojarraをglassfish 3.1.2.2と、ejbsを含むWebアプリで再生するにはどうすればよいですか?