1

我在 jsf 页面(primefaces 1.1 版)中使用 p:remoteCommand 更新 ah:inputText 时遇到问题。ActionListener 方法被正常调用,但服务器响应没有更新 inputText 值的新值。这是jsf代码:

    <h:inputText id="nationalIdCeo" value="#{InsertPotentianAgencyManagers.ceoNationalId}" />
<p:remoteCommand name="rc_updateNationalIds" immediate="true"
actionListener="#InsertPotentianAgencyManagers.setNationalIds}" update="nationalIdCeo" />
<h:outputLink onclick="rc_updateNationalIds(); return false;" >update NIs</h:outputLink>

这是与backbean相关的方法:

public void setNationalIds(ActionEvent event){
  Integer r = new Random( System.currentTimeMillis() ).nextInt(1000000);
  ceoNationalId = r.toString();
}

public String getCeoNationalId() {
  return ceoNationalId;
}

我还使用 firebug 来收集有关响应的更多信息。以下是更多信息:

<?xml version="1.0" encoding="UTF-8"?>
<partialResponse>
  <components>
    <component>
      <id>form:nationalIdCeo</id>
      <output><![CDATA[<input id="form:nationalIdCeo" name="form:nationalIdCeo" type="text" value="" />]]></output>
    </component>
  </components>
  <state><![CDATA[<input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="8EgC7hvJoXWgMHaUZxk5rx66APlnNueyP32ajDxbvc/i5akMf2jX5b2om9fR6WlpZC0i3PIunbrAxQXxMwRdpzSFyU84eV8ygbQsQNq6XkwhToCteAtgw3FDPXnLDGwxTsX9pKGbYknB2FWSo74DqQ==" />]]></state>
  <callbackParams>
    <callbackParam>{"validationFailed":false}</callbackParam>
  </callbackParams>
</partialResponse>

任何解决方案将不胜感激。

4

0 回答 0