2011-04-28 21 views
4

我很熟悉在Websphere 7中使用JSF 2時的類加載問題。我想知道在其他的fullstack應用程序服務器上是否存在類似的問題。怎麼樣JBoss 5+,WebLogi 10+等? JSF 2中是否有任何已知的問題,如果有的話,需要做些什麼才能讓JSF 2在這些服務器上運行?應用程序服務器中的JSF 2問題?

THX

回答

5

在WebSphere低於5.x高達你需要,只要你想捆綁,並用自己的JSF IMPL到WAR和EAR類加載器設置爲在WAS管理控制檯PARENT_LAST當前8.x中/WEB-INF/lib

在JBoss 4.x中,使用當前的6.x,只需將以下上下文參數添加到/WEB-INF/web.xml即可禁止JBoss內置的JSF部署程序。

<context-param> 
    <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name> 
    <param-value>true</param-value> 
</context-param> 

在GlassFish 2.X高達你需要將以下條目添加到/WEB-INF/sun-web.xml當前3.X(與Glassfish的Eclipse的插件自動生成應的模板文件,如果你創建一個目標運行時配置Web項目到Glassfish)。

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

關於Weblogic,對不起,我不知道,我從來沒有用過它。

+0

Thx提示。在我看來,要求應用程序服務器隨JSF實現一起發佈以符合標準,並不是最好的想法,因爲供應商往往需要適齡來適應新標準。它在開發人員如何處理過時的實現方面造成了很多混亂。 – tasel 2011-04-28 19:16:50

+0

不客氣。 – BalusC 2011-04-28 19:21:49

0

在WebLogic中,WebLogic for JSF 2.0包含一個共享Java EE庫。通過部署描述符很容易使用和引用。

+0

這很好,現在也許是未來兩年。但是,如果JSF 3被髮布呢?我是否必須恢復類加載器hirarchy(如在Websphere 7中隨JSF 1.2一起提供)才能在WEB-INF/lib中使用它? – tasel 2011-04-28 19:11:17

0

以下是Jeff提到的圖書館概念的簡要說明。 http://blog.eisele.net/2009/07/jsf-20-beta-1-on-oracle-weblogic-10gr3.html

看到最新的WLS 12c它仍然存在,但AFAIK你最終將不得不在未來恢復網絡應用類加載器,以支持這個概念。

+0

Thx爲您的答案。與此同時,我能夠在這個問題上獲得一些經驗。看起來像使最新的JSF版本在全面的應用服務器上可用,總是需要擺弄機器類加載器。更糟糕的是:提供JSF的替代版本可能會影響供應商的支持...因此,您的供應商會看到,儘管您支付了大量資金,但由於使用了不受支持的JSF版本,因此不會獲得批准。因此,如果您使用的是商業應用服務器並希望保持您的支持:堅持使用舊的JSF版本,直到供應商發佈新版本。 – tasel 2012-05-07 09:16:15

相關問題