【问题标题】:Glassfish2.1 expects JSP while runing a JSF2.1 applicationGlassfish 2.1 在运行 JSF 2.1 应用程序时需要 JSP
【发布时间】:2013-01-08 06:38:32
【问题描述】:

我正在尝试在 Glassfish2.1 上运行 jsf 2.1 应用程序。 WAR 文件部署成功,但是当我运行应用程序时,它给出了 HTTP 404 错误。在日志中,我可以看到以下内容

SEVERE: PWC6117: File "C:\Project\CA\workspace\.metadata\.plugins\com.sun.enterprise.jst.server.sunappsrv91\v2domain2\applications\j2ee-modules\fal\search.jsp" not found

我想知道为什么它需要 JSP,它应该寻找的 URL 是 fal/search.jsf。我已经在 J​​Boss7.1 上运行了这个应用程序,它在那里运行得很好。我的应用程序中没有 JSP,我创建了 .xhtml 文件。 这是我的 web.xml

的相关内容
<servlet>
  <servlet-name>Faces Servlet</servlet-name>
  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
  <servlet-name>Faces Servlet</servlet-name>
  <url-pattern>*.jsf</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>Faces Servlet</servlet-name>
  <url-pattern>*.faces</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>Faces Servlet</servlet-name>
  <url-pattern>/faces/*</url-pattern>
 </servlet-mapping>

<!-- Maintain page state on client side  --> 
 <context-param>
  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
  <param-value>client</param-value>
 </context-param>

还有faces-context.xml

<navigation-rule>
    <from-view-id>/search.xhtml</from-view-id>
    <navigation-case>
      <from-outcome>success</from-outcome>
      <to-view-id>/info.xhtml</to-view-id>
    </navigation-case>
  </navigation-rule>

我尝试在 web-xml 中的这个 servlet 的 url-pattern 中添加 *.jsp,但这也不起作用。我得到了

javax.servlet.ServletException: PWC1232: Exceeded maximum depth for nested request dispatches: 20

那么它为什么要寻找 JSP?有没有办法解决这个问题?


我们无法在 Glassfish 2.1 上解决此问题。最后我们迁移到 JBoss 7.1。


【问题讨论】:

  • 不是&lt;servlet-mapping&gt; &lt;servlet-name&gt;Faces Servlet&lt;/servlet-name&gt; &lt;url-pattern&gt;*.face&lt;/url-pattern&gt; &lt;/servlet-mapping&gt;
  • 我认为在这种情况下不会有任何区别,因为我没有遇到 *.face 或 *.faces URL 模式的任何问题。
  • 好像 glassfish2.x 不能和 jsf2.x 一起工作。我们要么将 glassfish 升级到 3.x,要么将 jsf 降级到 1.x。

标签: web-applications jsf-2 glassfish-2.x


【解决方案1】:

glassfish2.x 似乎不适用于 jsf2.x。我们要么必须将 glassfish 升级到 3.x,要么将 jsf 降级到 1.x。我升级了 glassfish 以使其正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 2016-09-03
    相关资源
    最近更新 更多