2012-02-08 5 views
0

私はindex.xhtmlページの本を持っています。書籍をクリックするとbook.xhtmlに行き、その本の詳細を表示します。できます。しかし、私のプロジェクトでは、Icefaceを使うことを意図していました。 Icefaceコンポーネントを追加すると、ice:panelTabSetbook.xhtmlにリンクし、index.xhtmlのリンクをクリックすると、もうbook.xhtmlにリダイレクトされません。誰かがこれにどのような光を当てることができますか?このIcefacesコンポーネントがアプリケーションを動作させないのはなぜですか?

いるindex.xhtml

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:c="http://java.sun.com/jsp/jstl/core" 
     xmlns:ui="http://java.sun.com/jsf/facelets" 
     xmlns:f="http://java.sun.com/jsf/core"> 
    <h:head> 
     <title>BookShop</title> 

    </h:head> 
    <h:body> 

     <h:form> 
     <ul> 
    <ui:repeat value="#{bookCatelogBean.books}" var="book"> 
     <li> 
      <h:commandLink action="bookDetails">#{book.title} 
       <f:param name="id" value="#{book.id}" /> 
      </h:commandLink> 
     </li> 
    </ui:repeat> 
</ul> 
     </h:form> 

    </h:body> 
</html> 

book.xhtml

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:c="http://java.sun.com/jsp/jstl/core" 
     xmlns:ui="http://java.sun.com/jsf/facelets" 
     xmlns:f="http://java.sun.com/jsf/core" 
     xmlns:ice="http://www.icesoft.com/icefaces/component"> 
    <h:head> 
     <title>BookShop</title> 

    </h:head> 
    <h:body> 

     #{book.title} 

     <h:graphicImage id="image1" value="#{book.coverImage}" /> 

     #{book.description} 

     <ice:panelTabSet styleClass="tabSet" tabPlacement="bottom" align="right"> 
      <ice:panelTab label="label1"> 
       <ice:outputText value="Label" /> 
      </ice:panelTab> 
      <ice:panelTab label="label2"> 
       <ice:outputText value="Label2" /> 
      </ice:panelTab> 
      <ice:panelTab label="label3"> 
       <ice:outputText value="Label3" /> 
      </ice:panelTab> 
     </ice:panelTabSet> 
    </h:body> 
</html> 
+0

サーバーログには何がありますか? – zeller

+0

JSPではなくFaceletsを使用していますので、JSPタグを追加しないでください。私はそれを削除しました。 – BalusC

答えて

1

<h:commandLink>は既存のページを指すようには見えません。 bookDetailsに設定しましたが、ターゲットビューIDはbookbook.xhtml)です。ここでもPOSTは必要ありません。それは、searchbotsによってリンクをクロークロブルにするだけでなく、エンドユーザが閲覧できないようにします。

代わりに<h:link>を使用し、bookDetailsの代わりにoutcomebookに設定してください。

<h:link value="#{book.title}" outcome="book"> 
    <f:param name="id" value="#{book.id}" /> 
</h:link> 

<h:form>を削除することを忘れないでください。

関連する問題