2013-07-06 61 views
1

我想使用showcase的commandButton中的示例。RichFaces ajax不工作

但是,當我這樣做:

<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:rich="http://richfaces.org/rich" 
    xmlns:a4j="http://richfaces.org/a4j" 
    xmlns:f="http://java.sun.com/jsf/core"> 

    <h:head> 
     <title>Rich Teste</title> 
    </h:head> 
    <h:body> 
     <h:outputStylesheet> 
      form { 
       background: #fee3ad 
      } 
     </h:outputStylesheet> 
     <h:form id="iddoform" > 
      <h:panelGrid columns="3"> 
       <h:outputText value="Nome:" /> 
       <h:inputText value="#{testeBean.nome}"/> 
       <a4j:commandButton value="Teste" render="iddoform:out" execute="@form" /> 
      </h:panelGrid> 
      <br /> 
      <a4j:outputPanel id="out"> 
       <h:outputText value="Hello #{testeBean.nome} !"/> 
      </a4j:outputPanel> 
     </h:form> 
     <br /> 
     <a4j:log /> 
    </h:body> 
    </html> 

它沒有工作,所以我改變了這個:

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:rich="http://richfaces.org/rich" 
     xmlns:a4j="http://richfaces.org/a4j" 
     xmlns:f="http://java.sun.com/jsf/core"> 

    <h:outputStylesheet> 
     form { 
      background: #fee3ad 
     } 
    </h:outputStylesheet> 

    <h:form id="iddoform"> 
     <h:panelGrid columns="3"> 
      <h:outputText value="Nome:" /> 
      <h:inputText value="#{testeBean.nome}" /> 
      <a4j:commandButton value="Teste" 
       render="iddoform:out" execute="@form" /> 
     </h:panelGrid> 
     <br /> 
     <a4j:outputPanel id="out"> 
      <h:outputText value="Hello #{testeBean.nome} !" /> 
     </a4j:outputPanel> 
    </h:form> 
    </html> 
enter code here 

和它的作品!

更改是從html中刪除頭部和身體。

我的問題是:'爲什麼不用頭部和身體標籤?'。 PS:我試着用render =「iddoform:out」,:iddoform:out out; out;而且我也嘗試着立即成真,但不工作。

+0

請在此處郵政編碼,而不是鏈接。如果鏈接死了你的問題將是無用的。 – Sergio

+1

謝謝塞爾吉奧,下次我發佈代碼。 –

+0

git上的測試樣本:https://github.com/levymoreira/RichTeste/案例大家都想測試。 –

回答

0

當你說「它不工作」,你不得不說,你如何期待它的工作。

這不是<h:head><h:body>,這使它不起作用,它是immediate="true"。它可以在設置名稱之前處理按鈕操作。你的第二個例子中沒有它,這就是它的原因。

另外你不必用iddoform:out來指向面板,只需out就夠了,引擎就會找到它。

+0

嗨Makhiel,Iam嘗試與imediate,並與'iddoform:出',':iddoform:出'和'出',但只有當我刪除頭部和身體時工作。如果你下載你看到的github項目,那麼github.com/levymoreira/RichTeste中的示例已經工作,但是如果你添加頭部和身體不工作。謝謝。 PS:Iam編輯原文請求提高理解。 –

+0

@LevyMoreira當我複製它爲我工作的第一個例子。什麼不適合你?文本是否被刷新? – Makhiel

+0

是的,他工作,現在添加頭部和身體標籤,他沒有更多的工作。 –