我认为这是一项直接的任务。 我有一个Primefaces p:inputText字段,我在导航出该字段后需要使用它。我正在使用p:ajax event =“blur”来启动支持bean处理。这似乎工作正常,但是当我查看inputText字段中应该存在的值时,它在辅助bean中将返回null。
以下是我的代码:输入文本组件:
<p:inputText id="redirectionDocIdInput" size="21"
rendered="#{!isInquiryMode}"
onkeyup="this.value = this.value.toUpperCase();"
value="#{redirectionForm.redirectDocId}" >
<p:ajax event="blur" listener="#{redirectionController.findRedirectDocFromId(redirectionForm)}"
update=":tabView:redirectionForm:redirectionMessages :#{p:component('authDocLaInput')}" />
</p:inputText>
这是支持bean:
public void findRedirectDocFromId( RedirectionForm form ) {
String docId = form.getRedirectDocId();
Document redirDoc = searchService.getDocumentByDocumentId(docId);
if( redirDoc == null ) {
MessageUtils.addFacesErrorMessage("Document Id ("+docId+") not found.");
return;
}
form.setRedirectDoc(redirDoc);
form.setAuthDocLA(redirDoc.getLandAreaCode());
form.setRedirectDocId(docId);
}
我可以在支持bean中设置一个断点,我看到表单的有效组件值,但redirectDocId返回null。 我做错了什么,或者我需要添加什么?
感谢。