【问题标题】:HTTP Status 503 Error while migrating Tomcat 6 to glassfish v2.1将 Tomcat 6 迁移到 glassfish v2.1 时出现 HTTP 状态 503 错误
【发布时间】:2013-01-29 21:06:55
【问题描述】:

我在我的应用程序中使用 Prime 面孔。 我有将 Tomcat 服务器(6)迁移到 Glass fish(v2.1)的规范 我在网豆里做过。

但我在运行项目时收到 HTTP 状态 503 错误。 (使用tomcat 6时工作正常)

在控制台中获取这个

Initializing Mojarra (1.2_13-b01-FCS) for context '/Prime'
WebModule[/Prime]PWC1275: Exception sending context initialized event to listener
instance of class com.sun.faces.config.ConfigureListener

Caused by: org.xml.sax.SAXParseException: cvc-enumeration-valid: Value '2.0' is not
facet-valid with respect to enumeration '[1.2]'. It must be a value from the enumeration.

为什么会出现这个错误,请给我一个解决方案。

谢谢。

【问题讨论】:

  • 服务器初始化是否正确?您的日志中有任何错误吗?
  • 是的。我已经编辑了这个问题。请看一看。

标签: jsf exception jsf-2 primefaces http-status-code-503


【解决方案1】:

Glassfish v2 是一个完整的 Java EE 5 容器,捆绑了 JSF 1.2。您的 webapp 显然是一个基于 JSF 2.0 的应用程序,它在 /WEB-INF/lib 中有 JSF 2.0 库。这当然会与 Glassfish 自己的具有此类错误的 JSF 1.2 库冲突。您的具体错误是由 JSF 1.2 不支持的 <faces-config version="2.0"> 引起的。

虽然向后兼容 Java EE 5,但 JSF 2.0 是 Java EE 6 的一部分,因此默认情况下仅捆绑在 Glassfish v3 等中。它在 Tomcat 中工作显然是因为 Tomcat 作为准系统 JSP/Servlet 容器不附带 JSF,而仅附带 JSP/Servlet。所以 Tomcat 中的 JSF 不会有潜在的版本冲突。

您需要告诉 Glassfish,它不应该使用自己捆绑的 JSF,而是使用 webapp 捆绑的 JSF。您可以通过将以下条目添加到/WEB-INF/sun-web.xml 文件的<sub-web-app> 来做到这一点:

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

如果你没有这个文件,你可以在这个Glassfish v2.1.1 deployment guide的底部找到一个示例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC '-//Sun Microsystems, Inc.//DTD 
   Application Server 9.0 Servlet 2.5//EN' 
   'http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd'>
<sun-web-app>
   <!-- Your config here -->
</sun-web-app>

【讨论】:

  • 嗨BalusC,我做了同样的事情 但它仍然没有加载jsf1.2 jsf 2.1 为上下文“/test1”初始化 Sun 的 JavaServer Faces 实现 (1.2_04-b22-p05)
  • 您使用的是哪个 Glassfish v2 版本?在非常早期的版本中,他们使用了一个不直观的属性名称useMyFaces,不久之后它被重命名为useBundledJsf。改用&lt;property name="useMyFaces" value="true"/&gt; 试试吧。
  • 我们使用的是 GlassFish v2.1 和 PrimeFaces 3.4.2
  • 也试过这个。它不工作
  • 好吧,显然sun-web.xml 不在正确的位置或未正确重新部署。如果您不确定,请联系服务器管理员。
猜你喜欢
  • 1970-01-01
  • 2014-08-24
  • 2011-04-11
  • 2018-12-15
  • 1970-01-01
  • 1970-01-01
  • 2015-05-21
  • 2020-03-20
  • 1970-01-01
相关资源
最近更新 更多