2013-02-23 39 views
0

在Eclipse JUNO,我開始:爲什麼我的jsf標籤不工作?

  1. 新的動態Web項目
  2. 名稱:JSFTest;配置:JavaServer Faces的V2.0項目
  3. JSF Capabilites: enter image description here
  4. 複製罐子WEB-INF/lib目錄(JSTL的API,JSTL-implement執行,JSF的API,JSF-implement執行):

    enter image description here

  5. 新的HTML的WebContent:用的index.xhtml 「新的facelet組合頁面」,而裏面的代碼:

    enter image description here

  6. 在web.xml中,我寫的index.xhtml到受歡迎的一部分

  7. 當我我的Apache Tomcat 7的服務器上運行它,結果(不要理會H1標題):

    enter image description here

那麼爲什麼沒有顯示輸出文本和按鈕?我錯了什麼?我在YouTube上看到了很多視頻,我跟蹤了他們,在它的視頻中,但在我身上。

+1

爲什麼jsf 1.2在lib中? – 2013-02-23 23:25:54

+0

謝謝你,我們figurated出來 – victorio 2013-02-25 13:19:57

回答

4

因爲您必須訪問 url映射的web.xml文件中所述的/faces/虛擬文件夾下的index.xhtml頁面。

一個簡單的方法,使您的JSF頁面的工作就是改變你的web.xml

從URL映射:

<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>*.xhtml</url-pattern> 
</servlet-mapping> 

如果你不想要更改此設置,您必須將您的welcome-file更改爲/faces/index.xhtml

IMO這將是更好的第一選擇,在這樣的FacesServlet將只處理xhtml頁面,使用/faces/*會使其處理任何其他資源如圖像,CSS和JS文件。

+0

不工作..在web.xml我有現在這樣: '<歡迎文件列表> \t <歡迎文件> /faces/index.xhtml 面臨的Servlet javax.faces.webapp.FacesServlet <負載-on-啓動> 1 面臨的Servlet *。XHTML <的context-param>' 和我得到這個由鉻: _HTTP狀態404 - /JSFTest/faces/index.jsp_ – victorio 2013-02-23 23:27:32

+0

@victorio我回答說你應該只做一次這些改變,而不是兩次。爲了解決這個問題,只需將'welcome-file'的變化恢復爲'index.xhtml' – 2013-02-23 23:28:45

+0

now:'HTTP狀態404 -/JSFTest/index.jsp' 爲什麼要尋找jsp? – victorio 2013-02-23 23:33:52