【问题标题】:Migrating JSF 2.1 application from Glassfish 3 to Weblogic 10.x or 11将 JSF 2.1 应用程序从 Glassfish 3 迁移到 Weblogic 10.x 或 11
【发布时间】:2011-12-06 09:36:17
【问题描述】:

我在 GlassFish(ver.3) 应用服务器中使用 primefaces (ver 2.x) 和 Eclipse Link(ver 2 JPA 2.0) 开发了一个 JSF(2.1) 应用程序 (JavaEE5)。现在我需要在 WebLogic Server(10.x or11) 中安装应用程序。当我尝试在 Weblogics Web 界面上安装应用程序时,它会显示一条大错误消息 如何将我的应用程序从一个应用程序服务器转移到另一个应用程序服务器? IDE Netbeans 7.0 项目的 lib 中包含的 JSF 2.1 primefaces 库

错误信息是这样开始的

Message icon - Error Exception in AppMerge flows' progression
Message icon - Error Exception in AppMerge flows' progression
Message icon - Error Error loading the persistence descriptor WEB-INF/classes/META-INF/persistence.xml from the module Lee5.war. 
See the following stack trace for nested errors: 
    weblogic.descriptor.DescriptorException: VALIDATION PROBLEMS WERE FOUND D:\bea\user_projects\domains\base_domain\weblogic.utils.classloaders.GenericClassLoader@1702c48 
    finder: weblogic.utils.classloaders.CodeGenClassFinder@44757a 
    annotation: \WEB-INF\classes\META-INF\persistence.xml:2:3:2:3: 
    problem: cvc-attribute.4: The value '2.0' does not equal the fixed value '1.0' of attribute 'version':<weblogic.utils.classloaders.GenericClassLoader@1702c48 
    finder: weblogic.utils.classloaders.CodeGenClassFinder@44757a annotation: /WEB-INF/classes/META-INF/persistence.xml:2:3> 
    at weblogic.descriptor.internal.MarshallerFactory$1.evaluateResults(MarshallerFactory.java:245)
    at weblogic.descriptor.internal.MarshallerFactory$1.evaluateResults(MarshallerFactory.java:231) 
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:155) 
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:323) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescriptorBean(AbstractDescriptorLoader2.java:411) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBeanWithoutPlan(AbstractDescriptorLoader2.java:759) 
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:768) 
    at weblogic.deployment.AbstractPersistenceUnitRegistry.loadPersistenceDescriptor(AbstractPersistenceUnitRegistry.java:177) 
    at weblogic.deployment.AbstractPersistenceUnitRegistry.loadPersistenceDescriptors(AbstractPersistenceUnitRegistry.java:101) 

【问题讨论】:

  • 我没有一个好的答案,但看起来问题出在 WebLogic 类加载器上。 WebLogic 与其他应用程序服务器一样,有自己的类加载器和他们自己的内置库包,它们的类加载器会优先处理这些包。从 Tomcat 迁移到 JBoss 时,我遇到了类似的问题,因为 JBoss 5 类加载器正在加载其捆绑的 JSF 1.2 版本,而不是我在 WEB-INF/lib 中拥有的 JSF 2.0。
  • 尝试在 Tomcat 7 上运行您的应用程序,因为它没有预先捆绑的库,并且其类加载器将首先在 WEB-INF/lib 中查找 JAR 文件。这将帮助您缩小问题范围。如果它在 Tomcat 上运行,那么我们必须弄清楚 WebLogic 中加载的 JSF 和 JPA 版本。

标签: jsf-2 primefaces eclipselink glassfish-3 weblogic-10.x


【解决方案1】:
annotation: \WEB-INF\classes\META-INF\persistence.xml:2:3:2:3: 
problem: cvc-attribute.4: The value '2.0' does not equal the fixed value '1.0' of attribute 'version':<weblogic.utils.classloaders.GenericClassLoader@1702c48 

这个问题是因为 webapp 提供了一个persistence.xml,它是为 JPA 2.0 编写的,而 Weblogic 10.3.x 只支持 JPA 1.0。您需要阅读以下开发人员指南如何让 JPA 2.0 在 Weblogic 10.3.x 上运行:Running JPA 2.0 API on WebLogic 10.3

一旦你解决了这个问题,你就会遇到 Spauny 已经暗示的一个新问题:JSF 2.1 需要 Servlet 3.0,而这只能通过将 Weblogic 10.3 升级到 Weblogic 11 来解决。你需要降级到 JSF 2.0。 JSF 2.0 在 Weblogic 10.3.3 和更新版本中得到支持。对于旧版本,我不确定如何升级它。另见Steps to deploy latest JSF version in weblogic 10.3

【讨论】:

    【解决方案2】:

    您可以查看这个 Eclipse 错误,非常接近您的问题,还请注意 WebLogic 10.3 具有 Java EE 5 和 Servlets 2.5 以及 JSF 2.1 requires Servlets 3.0。\

    您还可以看到指向 schemaLocation 类型差异的这个主题:http://dev.eclipse.org/mhonarc/lists/eclipselink-users/msg05639.html

    您应该仔细查看迁移指南!

    编辑:这篇文章也可能会有所帮助:http://blog.eisele.net/2011/01/weblogic-10340-oepe-maven-primefaces.html

    【讨论】:

      猜你喜欢
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-08
      • 2014-03-04
      • 2020-05-15
      • 1970-01-01
      • 2013-05-03
      相关资源
      最近更新 更多