RichFaces rich:autocomplete不会触发valueChangeListener

时间:2013-04-12 17:51:20

标签: jsf-2 richfaces facelets

基于this我实现了一个富:自动完成功能,并带有动态列表给自动完成功能。我接下来要做的是,当用户编辑此字段以根据其值更新另一个字段时。

我发现了各种链接和引用,声明这是一个错误,它是在提交使用的表单时触发的,但至少在一年前就会触发。 hereherehere

我的代码片段:

<rich:autocomplete value="#{cotizacionBean.currentOpcionEditable.sumaAsegurada}" style="width:100px;" id="sumaAseguradora"
                              required="true" validatorMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}"
                              autocompleteMethod="#{cotizacionBean.getAutocompleteListSumaAsegurada}"
                              valueChangeListener="#{cotizacionBean.sumaAseguradaModificada}"
                              requiredMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}" converterMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}">
                 </rich:autocomplete>

我的豆子:

public void sumaAseguradaModificada(){
    System.out.println("entro sumaAseguradaModificada");
}

所以我的问题是两个:这已经解决了吗?我该怎么办?

1 个答案:

答案 0 :(得分:0)

以下是我的工作方式:

<a4j:jsFunction name="submitSearch"
    execute="sumaAseguradora"
    render="sumaAseguradora"
    action="#{cotizacionBean.sumaAseguradaModificada}" />
<rich:autocomplete style="width:100px;" id="sumaAseguradora"
    required="true" validatorMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}"
    autocompleteMethod="#{cotizacionBean.getAutocompleteListSumaAsegurada}"
    requiredMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}" converterMessage="#{msgs['global.etiqueta.sumaAseguradoraRequerida']}"
    onselectitem="submitSearch()"
    value="#{cotizacionBean.currentOpcionEditable.sumaAsegurada}">
</rich:autocomplete>

在Bean中,我不得不更改方法的签名:

public Object sumaAseguradaModificada() {
   System.out.println("entro sumaAseguradaModificada");
   return "success";
}