Porém quando o campo está preenchido com algum valor ele não é setado no Bean. Se eu remover o “disabled” ele funciona corretamente.
A solução que encontrei para contornar o problema foi criar um campo “hidden” que armazene o valor desse input, porém não fiquei satisfeito com essa gambiarra, ops, solução.
Esse comportamento é normal? O que estou fazendo de errado?
Acabei de encontrar um tópico na página do Prime que menciona o “erro”.
[i]Re: Problems with the “disabled” attribute and form submission
Things like this can happen, if state is not preserved that is why I’ve asked about the scope of your request. So in your request you seem to enable components but evaluating disabled EL next time will yield to true as state is not kept and [color=red]JSF does not process disabled components[/color]. With JSF 2.0 you can use view scope and for JSF 1.2, workarounds like tomahawk saveState, springs custom scopes, seam viewscope and more.
Anyway glad you worked it out somehow.[/i]
Obs: ReadOnly também não é enviado para o Bean.
Bem, parece que o JSF não processa campos desabilitados. Fica a dica então, podem usar um campo “hidden” com a mesma EL para enviar para Bean o valor do campo desabilitado.
Estou com um problema semelhante ao do criador deste tópico, a diferença é que é um atributo do meu bean que diz se o campo está enabled ou disabled. No momento do submit, tenho CERTEZA que os campos estão ativados, porém estes não são validados e quando chegam no bean, diversas nullPointExceptions são lançadas. Segue abaixo o meu código da minha página: