Recuperando valores do form (JSF)

5 respostas
M

Boa tarde,

Existe umma forma melhor para recuperar os dados digitados num formulario utilizando JSF, ao inves de
public String button1_action() {
        // TODO: Processar o botão de ação clicar. O valor de retorno é um         
// de navegação em que nulo fará retornar para a mesma página.
try{
    local = new Local();

        local.setBairro((String)txtBairro.getValue());
        local.setNomeLocal((String)txtLocal.getValue());
        Conexao.salva(local);
}catch(Exception e){
    error("erro na inclusao" + e.getMessage());
}

        return null;
    }
Alguma sugestao??

5 Respostas

D

Vc pode remover o bind, cria o input anonimo da página JSF e associa o value para #{mgr.vo.property}. Dessa forma seu vo será populado automaticamente!!!

M

Certo,

minha duvida agora e recuperar esse objeto, ele vai estar na sessao??
no caso seguindo a sua resposta, exemplificando
nos jsp, value do imput

#{local.nome}

no meu metodo click do botao, recupero q jeito…? ?

D

Deduzindo que o seu VO…etc está associado ao ManagedBean, é só vc chamar a propriedade getVO.

O escoco do seu objeto está dentro do managedBean, vc tem que verificar em qual escopo no faces-config.xml

#{managedbean.local.nomeProperty}

No seu evento button() é só chamar local.nomeProperty

M

Opa, valeu…
Estava aqui pensando se meu backing bean não fica muita grande:
[list]Declaração das praproridades do VO[/list]
[list]get e sets das praproridades do VO[/list]
[list]Lógica das interfaces da pagina em si [/list]

è isso mesmo, só assim para ele “enxergar” o VO??
Se essa classe VO estiver separada , não dá???

D

mackj:
Opa, valeu…
Estava aqui pensando se meu backing bean não fica muita grande:
[list]Declaração das praproridades do VO[/list]
[list]get e sets das praproridades do VO[/list]
[list]Lógica das interfaces da pagina em si [/list]

è isso mesmo, só assim para ele “enxergar” o VO??
Se essa classe VO estiver separada , não dá???

Pelo que entendi vc predente anexar as propriedades do VO direto no ManagedBean. O que realmente sugeri foi associar o teu VO com o MGRBean e ter um get-set, porém o VO deve estar no escopo de algum MGRBean. Dessa forma ficaria assim na tua view:

mgrbean.pessoaVO.nome
mgrbean.pessoaVO.idade

public class ManagedBeanPessoa extends SimpleManagedBean{

private PessoaVO pessoaVO;

public  ManagedBeanPessoa(){

pessoaVO = new PessoaVO();

}

…set-get(pessoaVO)

}

Isso isso que vc está pensando né? Abraços

Criado 1 de fevereiro de 2007
Ultima resposta 2 de fev. de 2007
Respostas 5
Participantes 2