![](/img/trans.png)
[英]Should Websphere application server and JRE version used by Eclipse have the exact same version number?
[英]Can JSF 2.0 be used with Websphere application server version 7.x
JSF 2.0可以與WebSphere Application Server V7.x一起使用嗎?
如果是這樣,怎么樣?
WebSphere Infocenter表明,更改為替代JSF實現的正確方法是創建一個啟用了隔離的類加載器選項的WebSphere共享庫。
任何需要JSF 2的模塊都將與新的共享庫相關聯,然后應用程序將以JSF 2而不是JSF 1.2開始。
逐步將WebSphere Application Server v7上的MyFaces 2.0設置為IBM建議的共享庫: http : //wasbehindtheglass.blogspot.co.uk/
我已經為Majorra / JSF 2.0.4應用了類似的步驟,並僅使用jsf-api.jar和jsf-impl.jar創建了一個共享庫。 正如@Ian McLaird告訴WAS 7.0.0.19和JSF 2.0.4是必需的。 JSF 2.1.x需要Servlet 3,WAS7不支持
我的經驗:
- > Windows上的WAS 7.0.0.11
- >我的戰爭應用程序的WEB-INF / lib中的javax.faces-2.0.11.jar
- >使用隔離類加載器與javax.faces-2.0.11.jar共享庫
- > WAS與我的戰爭應用程序相關的共享庫
- >類加載器的實例和應用程序沒有變化(PARENT_FIRST)
有了這個conf(上面),應用程序可以在WAS 7上使用JSF 2.0。如果我從我的War應用程序中刪除了javax.faces-2.0.11.jar,它就不起作用了。
以下為我工作
更改web.xml如下
<context-param>
<param-name>com.sun.faces.expressionFactory</param-name>
<param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
<listener>
<listener-class>com.sun.faces.config.ConfigureListener</listener-class>
</listener>
而已 。
Websphere附帶JSF 1.2.something並默認加載它。 要使用不同的JSF庫(或WS提供的任何其他庫,例如commons-logging),您需要更改類加載器對位置進行優先級排序的方式。 他們稱之為“父級最后”意味着加載你的lib然后加載WS版本。
感謝你們!
它適用於更新版本的javax.faces。 查看maven依賴項:
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.1.29-08</version>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>com.sun.el</groupId>
<artifactId>el-impl</artifactId>
<version>2.2</version>
</dependency>
不要忘記在web.xml中添加以下內容:
<context-param>
<param-name>com.sun.faces.expressionFactory</param-name>
<param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
最后將應用程序和模塊的WebSphere類加載器順序更改為(父最后一個)設置: https : //www.ibm.com/support/knowledgecenter/SSAW57_7.0.0/com.ibm.websphere.nd.doc/信息/ AE / AE / urun_rclassloader_inst.html
問候
幾天來我一直在努力解決這個問題。 這是我解決它的方式。
使用以下庫: javax.faces-2.1.7.jar
如果你在PrimeFaces 3.1: primefaces-3.1.1.jar
Application Server實例: Class Loading - Parent Last
企業應用程序實例(戰爭模塊): 類加載 - 父最后
確保刪除所有Servlet容器庫,例如Tomcat所需的庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.