JSF欢迎文件未正确重定向

时间:2012-11-08 09:31:49

标签: java jsf-2

我无法正确设置应用欢迎文件以正确重定向到我的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

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

可能出现什么问题?

2 个答案:

答案 0 :(得分:3)

您在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输出中。

答案 1 :(得分:1)

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