我有一个JSF2 (Richfaces 4.1.0)项目在eclipse中运行。我试图使用mojarra jsf实现(2.2.0)在WAS 8.5上运行它。然后lib与maven一起提供,但服务器似乎覆盖了它们,因为在控制台中我可以读到Myfaces已加载。
我想知道他为什么这样做?如何使项目使用mojarra不使用共享库在管理控制台?
这是maven相关的代码部分:
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>javax.faces-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.2.0</version>
</dependency>
thanks in advance
我写这篇博客是为了演示如何让websphere 8.5使用mojarra而不是myfaces。
- 将Mojarra监听器添加到所需的web.xml文件中。
- javax.faces-2.1.24.jar (GroupId: org.glassfish)
- jsf-api-2.1.24.jar (GroupId: com.sun.faces)
- jsf-impl-2.1.24.jar (GroupId: com.sun.faces)
- 配置完共享库后,Websphere服务器必须是Restart。
- 部署项目后,在企业应用程序> staaec-web-1_0_10-SNAPSHOT_war(您的项目)>类加载器。类装入器顺序必须为select(先装入本地类装入器的类(最后装入父类))
- 为引用共享库到您的项目,您必须去企业应用程序> staaec-web-1_0_10-SNAPSHOT_war>共享库引用>共享库映射映射共享库到您的项目。
<listener><listener-class>com.sun.faces.config.ConfigureListener</listener-class></listener>
将Mojarra JSF实现(javax.faces-2.1.24.jar、JSF -api-2.1.24.jar和JSF -impl-2.1.24.jar)添加到Environment> Shared Libraries中。查看此页面配置JavaServer Faces实现。它详细解释了您必须配置的内容(基本上是隔离的共享库和配置JSF设置)