【问题标题】:Shared library with newer version of MyFaces on WebSphere 8.5在 WebSphere 8.5 上与更新版本的 MyFaces 共享库
【发布时间】:2013-11-25 13:00:13
【问题描述】:

我正在将应用程序从 WebSphere 7.0 迁移到 WebSphere 8.5。 WebSphere 8.5 使用的 MyFaces (2.0.2) 版本比我们使用的 (2.0.7) 旧版本,所以我尝试以与 WAS 7.0 相同的方式配置新版本,即使用 共享库 em>。

我已经使用以下 jar 配置了共享库:

myfaces-api-2.0.7.jar
myfaces-impl-2.0.7.jar
commons-logging-1.1.1.jar
commons-digester-1.8.jar
commons-collections-3.2.jar
commons-codec-1.3.jar

我已经检查了选项Use an isolated class loader for this shared library 。我遇到了错误:

com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: [Servlet 错误]-[Faces Servlet]:java.lang.IllegalStateException:否 为此应用程序配置的工厂。如果发生这种情况 faces-initialization 根本不起作用 - 确保你 正确包含基本配置所需的所有配置设置 面对应用程序,并包含所有必要的库。还 检查您的 Web 应用程序和容器的日志记录输出 对于任何例外!如果你这样做了但什么也没找到,那就是错误 可能是因为您使用了一些特殊的网络容器 不支持通过 TLD 文件注册上下文侦听器和 上下文侦听器未在您的 web.xml 中设置。一个典型的配置看起来 像这样;

<listener>
  <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>

在 javax.faces.FactoryFinder.getFactory(FactoryFinder.java:196) 在 javax.faces.webapp.FacesServlet.init(FacesServlet.java:112) 在 com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:337)

相同的配置在 WAS 7.0 上工作,除了在共享库中配置了一个额外的 jar:

C:\IBM\SDP\runtimes\base_v7\optionalLibraries\IBM\JSFProviders\WebSphere-MyFaces20-annotation-provider.jar

这里有什么问题?我需要指定一些东西来代替WebSphere-MyFaces20-annotation-provider.jar吗?我找不到任何为 WAS 8.5 配置此类共享库的示例。只有that for WAS 7.0,我在WAS 7.0 上成功使用过。

【问题讨论】:

  • 嗨,你解决了这个问题吗?
  • @LipingHuang 不行,这似乎是不可能解决的。
  • 经过几天的尝试,现在我成功在WAS8.5.5.5上部署了应用程序(MyFaces2.1.12)

标签: jsf websphere shared-libraries myfaces websphere-8


【解决方案1】:

WASdev 论坛中有一些相关的讨论,但显然还没有真正的答案。

https://www.ibm.com/developerworks/community/forums/html/topic?id=d2261080-de03-4aef-97ce-b60c5b8a517b&ps=25

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 2014-08-07
    • 2012-12-22
    相关资源
    最近更新 更多