2011-05-25 27 views
5

當我在eclipse中創建一個新項目時,它自動爲我創建了一個index.jsp頁面,我不想讓起始頁面成爲一個.jsp,我希望它成爲一個.xhtml 這就是我所做的在web.xml中:如何更改我的web項目的開始頁面?

<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> 
<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>/*</url-pattern> 
</servlet-mapping> 
<welcome-file-list> 
    <welcome-file>myStartPage.xhtml</welcome-file> 
</welcome-file-list> 
</web-app> 

上面的代碼並沒有讓我看到的頁面myStartPage.xhtml爲第一頁時,我在本地主機上運行的項目。

我該如何修改這個讓瀏覽器爲我顯示起始頁面。 另外我不想使用任何網址模式。這是強制性的嗎?(我嘗試刪除該標籤,但沒有構建)。

+0

目前什麼呢表明,當你打'HTTP://服務器:端口/ appContext /'? – 2011-05-25 09:52:25

+0

當我嘗試:'http:// localhost:8080/projectname /'我得到HTTP狀態500'javax.servlet.ServletException:FacesServlet不能有/ *的網址格式。' – sfrj 2011-05-25 09:56:24

回答

5

試試這個servlet映射:

<servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.xhtml</url-pattern> 
</servlet-mapping> 

這個作品在Glassfish的3

+0

這是正確的。現在我將該頁面看作起始頁面。但有一點我不明白:爲什麼URL,當我lauch只是說: 'http:// localhost:8080/projectname /'而不是'http:// localhost:8080/scarecrow1/myStartPage。 xhtml'? – sfrj 2011-05-25 10:02:54

+0

因爲它在內部轉發請求,所以我知道URL – 2011-05-25 10:04:53

+0

。謝謝! :) – sfrj 2011-05-25 10:06:25

1

據我所知總是會顯示index.jsp。你可以添加一個重定向到index.jsp:

<% response.sendRedirect("myStartPage.xhtml"); %> 

但是可能有更好的解決方案。

+0

我知道我可以重定向,但那不是我需要的。 – sfrj 2011-05-25 09:59:48

相關問題