【问题标题】:migrating jsf application from weblogic10 to weblogic 12c将 jsf 应用程序从 weblogic10 迁移到 weblogic 12c
【发布时间】:2014-02-01 03:39:08
【问题描述】:

在 weblogic 12c 版本中部署新的核心 SDM 模块(战争)时遇到问题。新的 SDM 核心模块 (wb-tss-core-sdm-web-war-0.9.1.war) 使用 JSF ,SeamListeners & FacesServlet (版本 1.2 jars),我们发现 JSF 1.2 版本不直接兼容weblogic 12c 版本。因此,应用程序部署失败并出现user defined listener conflict 问题

根据Weblogic 12c documentation

"WebLogic Server 12.1.1 增强了对 JSF 和 JSTL 的支持。在此 发布,JSF 2.x 和 JSTL 1.2 已直接并入 服务器的类路径。部署到 WebLogic Server 的应用程序可以 无缝使用 JSF 2.x 和 JSTL 1.2,而不需要您 部署和引用单独的共享库,就像在 以前的版本。为了向后兼容,WebLogic Server 提供可以被部署和引用的 JSF 和 JSTL 库 应用程序。请参阅部署 JSF 1.2 和 JSTL 库。 "

我们尝试根据文档在 weblogic 服务器路径中显式安装 JSF 1.2 战争以支持向后兼容性,并通过在 weblogic 中添加以下条目来强制 SDM 应用程序/战争使用 JSF 1.2 版本 jar。 xml。

<wls:library-ref>
   <wls:library-name>jsf</wls:library-name>
   <wls:specification-version>1.2</wls:specification-version>
   <wls:implementation-version>1.2</wls:implementation-version>
   <wls:exact-match>false</wls:exact-match>
 </wls:library-ref>

但是由于 FacesServlet 侦听器问题,部署再次失败,因为“jsf-impl-1.2_04_P02.jar”jar 已经是 (wb-tss-core-sdm-web-war-0.9.1.war) 战争的一部分.

尝试在 weblogic,xml 中添加以下条目,以强制应用程序使用应用程序特定的 jars/classes,它们是应用程序 war 文件的一部分。

<wls:prefer-application-packages>
<wls:package-name>javax.faces.*</wls:package-name>
<wls:package-name>com.sun.faces.*</wls:package-name>
<wls:package-name>com.bea.faces.*</wls:package-name>
<wls:package-name>com.sun.facelets.*</wls:package-name>
</wls:prefer-application-packages>

添加以上条目后,应用部署成功完成,但在控制台发现如下错误:

<BEA-101162> <User defined listener com.sun.faces.config.ConfigureListener failed: javax.faces.FacesException: org.jboss.seam.jsf.SeamApplicationFactory.
javax.faces.FacesException: org.jboss.seam.jsf.SeamApplicationFactory

由于上述错误,一些 Jasper 文件上传 SDM 屏幕无法访问,并且由于此错误而失败:

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.render.RenderKitFactory. Attempting to find backup.

我们如何克服这个问题?

【问题讨论】:

  • 请帮帮我。我无法找到任何解决方案。

标签: weblogic12c


【解决方案1】:

在将 JBoss Seam 应用程序从 Weblogic 10.3.3 迁移到 Weblogic 12.1.1 的过程中,我们遇到了同样的问题。
通过切换到 Weblogic 的默认 JSF 2.1.14 并将 Seam 版本更新到 2.3 解决了这个问题。
希望这会有所帮助。

【讨论】:

    【解决方案2】:

    不确定您是否看过关于这个问题的更长讨论: Migrating JSF-Application to Weblogic 12

    这有助于我分析类似的库迁移问题(休眠在我的列表中)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-03
      • 2011-10-08
      • 2011-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多