Tenho a seguinte duvida
tenho um formularios, que esta funcinando “normalmente”
dou o submit e ele vai para o proximo mostrando todos os dados digitados,
porem, oq eu nao sei fazer é, pegar esse valores e passar para o metodo que cadastra no DB
tenho esse botao no formulario
public String cadastrar() throws KrusstException{
pessoaFisicaCadastraDB("teste");
return("sucesso");
}
fazendo dessa forma, funciona, os dados sao cadastrados no DB
porem, eu preciso pegar os valores do formulario, e é essa parte que nao sei
1-em qual momento eu tenho que fazer esse cadastro?
como eu fiz no metodo cadastrar(), dentro dele ou em outro momento, so considero o metodo cadastrar como validacao?
2-como eu passo os valores do formulario para o metodo de cadastro?
para deixar aqui mais limpo, suponhamos que eu so tenha que cadastrar o nome da pessoa, eu tenho esse seguinte codigo no formulario
Se sua duvida é só como passar o valor do FORM para o seu ManagedBean, é simples
Quando você faz no campo #{pessoa.nome}, você está fazendo um binding (ligação) do campo do FORM para um atributo “nome”, dentro do ManagedBean “pessoa”. (o atributo deve possuir o método set e get).
Se você tem no mesmo form um binding para um campo (exemplo: #{pessoa.nome}) e seu botao chama um método cadastrar dentro do mesmo ManagedBean (#{pessoa.cadastrar}), então no seu método simplesmente chame o atributo de forma direta:
public String cadastrar() {
System.out.println(nome);
return null;
}
[quote=ManchesteR]Se sua duvida é só como passar o valor do FORM para o seu ManagedBean, é simples
Quando você faz no campo #{pessoa.nome}, você está fazendo um binding (ligação) do campo do FORM para um atributo “nome”, dentro do ManagedBean “pessoa”. (o atributo deve possuir o método set e get).
Se você tem no mesmo form um binding para um campo (exemplo: #{pessoa.nome}) e seu botao chama um método cadastrar dentro do mesmo ManagedBean (#{pessoa.cadastrar}), então no seu método simplesmente chame o atributo de forma direta:
public String cadastrar() {
System.out.println(nome);
return null;
}
[/quote]
valeu cara
funfou aqui
eu ja estava vendo coisas desse tipo nos codigos que deu uma olhada
Coloque o objeto Pessoa como um atributo do seu ManagedBean, ex:
public class Test { //esse é o managed bean
private Pessoas pessoa = new Pessoas();
//get and set para o objeto Pessoa
public String cadastrar() {
System.out.println(pessoa.nome); //aqui voce confere que o valor foi adicionado dentro do pessoa
}
}
Na sua interface, referencie assim: #{teste.pessoa.nome}, simples não?
[quote=ManchesteR]Coloque o objeto Pessoa como um atributo do seu ManagedBean, ex:
public class Test { //esse é o managed bean
private Pessoas pessoa = new Pessoas();
//get and set para o objeto Pessoa
public String cadastrar() {
System.out.println(pessoa.nome); //aqui voce confere que o valor foi adicionado dentro do pessoa
}
}
Na sua interface, referencie assim: #{teste.pessoa.nome}, simples não?
Espero ter ajudado[/quote]
ajudou sim, vou fazer as alteracoes e ver oq acontece
ja aproveitando, acho que vc pode me ajudar em outra duvida