2014-11-18 1 views
0

아래 예제에서 양식을 제출하면 변환기가 제대로 작동합니다. 그러나 'onchange'이벤트에서 어떤 작업을 수행하려고 시도하면 'enum'유형의 값이 null으로 변경됩니다. 몇 번의 시도와 연구 끝에 valueChangeListener, onchange = "submit()"및 immediate = "true"를 사용하여 아무 것도 해결되지 않았습니다.h : EnumConverter가있는 selectOneMenu가 null 값으로 업데이트됩니다.

열거

public enum TipoGasCondicaoUsoPermeacao { 

    CONCENTRACOES("Concentrações"), 
    FUGACIDADES("Fugacidades"), 
    PRESSOES_PARCIAIS("Pressões parciais"); 

    private String label; 

    private TipoGasCondicaoUsoPermeacao(String label) { 
     this.label = label; 
    } 

    /** 
    * @return the descricao 
    */ 
    public String getLabel() { 
     return this.label; 
    } 
} 

XHTML

<h:selectOneMenu value="#{condicaoUso.tipoGasCondicao}" required="false" styleClass="field_form medio"> 
    <f:selectItems value="#{listaMB.tiposGasCondicoesUso}" id="itemTipoGas" /> 
    <a4j:support event="onchange" oncomplete="dadosAlterados(true)" reRender="otherPanel" /> 
</h:selectOneMenu> 

면-config.xml에

<converter> 
    <converter-for-class>java.lang.Enum</converter-for-class> 
    <converter-class>javax.faces.convert.EnumConverter</converter-class> 
</converter> 

답변

0

문제 UNT 유지 저는 다음과 같이 속성 ajaxSingle = "true"(기본값은 'false')를 사용했습니다.

<a4j:support event="onchange" oncomplete="dadosAlterados(true)" reRender="otherPanel" ajaxSingle="true" /> 

Magic?

관련 문제