如何在GlassFish中更新Mojarra版本

时间:2012-05-28 09:45:46

标签: jsf jsf-2 glassfish upgrade mojarra

我想更新我的JSF应用程序以使用Mojarra 2.1.8版。我将这些行添加到WAR包的POM文件中:

<dependency>
    <groupId>org.glassfish</groupId>
    <artifactId>javax.faces</artifactId>
    <version>2.1.8</version>
</dependency> 

我还添加了JSF存储库。我的包使用Mojarra 2.1.8版成功构建。但是当我打开GlassFish日志时,我发现部署了一个Mojarra版本2.1.6。我错过了什么?我是否需要在GlassFish服务器中进行一些配置?

1 个答案:

答案 0 :(得分:17)

GlassFish本身已经捆绑了JSF,默认情况下,类加载优先于webapp中捆绑的一个。你基本上需要告诉GlassFish使用webapp捆绑的JSF。

编辑网络应用/WEB-INF/glassfish-web.xml(或/WEB-INF/sun-web.xml如果您使用的是第一个GF3版本之一)添加以下两个条目:

<class-loader delegate="false" />
<property name="useBundledJsf" value="true" />
然后,

GlassFish将使用捆绑的Web应用程序。

或者,如果您对GlassFish拥有完全的管理控制权,那么您也可以将其复制到/glassfish/modules目录中,替换旧版本,以便将其应用于所有Web应用程序。