【问题标题】:JSF welcome file not properly redirectingJSF 欢迎文件未正确重定向
【发布时间】:2012-11-08 09:31:49
【问题描述】:

我无法正确设置我的应用欢迎文件以正确重定向到我的 home.xhtml 我试图在 SO 中搜索,但我似乎无法让它工作..对不起..

在我的 web.xml 中,我有这些

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

我的 index.jsp 有这个

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jsp/jstl/core">
<head>
<title>My App</title>
</head>
<body>
    <c:redirect url="/faces/pages/home.xhtml"></c:redirect>
</body>
</html>

当我访问我的应用程序时:

http://localhost:8080/myApp

我什么也没得到,也没有重定向。

可能出了什么问题?

【问题讨论】:

  • 看看here! ,我认为这是同一类型的问题。

标签: java jsf-2


【解决方案1】:

您在 JSP 中使用 Facelets XML 命名空间语法。这行不通。使用 JSP @taglib 语法。

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<title>My App</title>
</head>
<body>
    <c:redirect url="/faces/pages/home.xhtml"></c:redirect>
</body>
</html>

如果您已经在 webbrowser 中通过右键单击和 查看源代码 浏览了检索到的 HTML 输出,那么您应该已经注意到 JSTL XML 命名空间和标签根本没有被解析并且看起来很普通在 HTML 输出中。

【讨论】:

  • 谢谢...抱歉搞砸了 JSP 和 JSF 概念。我不确定在 JSF 中设置欢迎文件的正确方法是什么
【解决方案2】:

有时列表中也需要一个 index.jsf。

【讨论】:

  • 只有当 OP 尝试将 JSF 页面用作 &lt;welcome-file&gt; 时才会出现这种情况,而 FacesServlet URL 模式是虚拟的而不是真实的。另请参阅此答案:stackoverflow.com/questions/7885874/… 但是,在这种情况下,OP 尝试使用普通 JSP 页面作为&lt;welcome-file&gt;
猜你喜欢
  • 2011-12-14
  • 2013-03-06
  • 2011-06-24
  • 2012-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多