Glassfish 2.1在运行JSF2.1应用程序时需要JSP

时间:2013-01-24 13:28:39

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

我正在尝试在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。我已经在JBoss7.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。


1 个答案:

答案 0 :(得分:0)

似乎glassfish2.x不适用于jsf2.x.我们要么将glassfish升级到3.x,要么将jsf降级为1.x.我升级了玻璃鱼以使其发挥作用。