JSF + SEAM + FACES + A4J: Binding problem

0 respostas
Malachai

Pessoal,

Tenho um projeto que utiliza o seam com jsf e facelets e estou com um problema para criar uma mascara simples de data para preencher os "/" conforme o usuario vai digitando. Ja tentei o jquery do richfaces, javascript (seria facil, mas nao consigo manipular o valor do componente HTMLinputElement) e estou tentando o a4j, mas em todos esbarro em problemas onde dificilmente encontro a solução na internet.

No caso agora estou tendo um problema com o atributo binding do a4j:support:

javax.el.PropertyNotWritableException: /T233Ev01CreateRevendas.xhtml @284,140 binding="t233SeamBean.userInput": Illegal Syntax for Set Operation

O erro parece simples, mas nao existe nada de errado com o meu metodo setter. Segue o codigo:

Código da pagina:

<s:decorate template="layout/display.xhtml" id="dataEmissaoD">
                <ui:define name="label">Data Emissão CRV 3</ui:define>
                <h:inputText id="dataEmissao" value="#{t233SeamBean.t233Ev01.dataEmissaoDT}" required="true" maxlength="10">
                	<f:convertDateTime timeZone="#{t233SeamBean.t233Ev01.timeZone}" pattern="dd/MM/yyyy" />
                	<a4j:support event="onkeypress" reRender="dataEmissao" action="#{t233SeamBean.formatar}" binding="t233SeamBean.userInput"></a4j:support>     
                	<a4j:support event="onblur" ajaxSingle="true" reRender="dataEmissaoD"/>
                </h:inputText>
                <h:outputText value="(ex: 01/01/2010)" />
                <ui:define name="message"><h:message for="dataEmissao" styleClass="error" /></ui:define>
            </s:decorate>

Backing bean:

private UIInput userInput;
	
	public UIInput getUserInput() {
        return userInput;
    }

    public void setUserInput(UIInput userInput) {
        this.userInput = userInput;
    }
    
    public void formatar(){
    	UIInput input = new UIInput();
    	Object valor = input.getValue();
    	input.setValue("TESTE");
    	setUserInput(input);
    }

Valeu pessoal!

Criado 7 de janeiro de 2011
Respostas 0
Participantes 1