2012-11-08 52 views
0

我無法正確設置我的應用程序文件表示歡迎妥善重定向到我home.xhtml 我試圖內SO搜索,但我似乎無法使它work..sorry ..JSF歡迎文件沒有正確重定向

在我的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 

我沒有收到任何東西,也沒有重定向。

什麼可能是錯的?

+1

看看[這裏](http://stackoverflow.com/questions/7416369/redirecting-using-jstl-core-redirect#answer-7416537)! ,我認爲這是相同類型的問題。 – tartak

回答

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> 

如果你已經探索通過右擊並在網頁瀏覽器查看源代碼檢索輸出HTML,那麼你應該已經注意到,JSTL XML命名空間和標籤都沒有在所有的解析和顯示普通的香草HTML輸出。

+0

謝謝......對不起和JSP和JSF概念搞砸了。我不確定什麼是在JSF中設置歡迎文件的正確方法 –

1

有時在列表中也需要有一個index.jsf。

+0

如果OP試圖將JSF頁面用作'',那麼'FacesServlet' URL模式是虛擬的而不是真實的模式。另請參閱此答案:http://stackoverflow.com/questions/7885874/jsf-welcome-file-not-recognized/7889247#7889247但是,在這種情況下,OP試圖使用普通的vanilla JSP頁面作爲「'。 – BalusC