2011-04-28 24 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

相关问题