Inserir no JSF

eu queria saber se tem um modo facil pra inserir os campos de um inputText do JSF usando o commandbutton, sem usar um Backing Bean complicado… eu queria um código bem intuitivo, bem simples. Caso exista outra forma de inserir, tem como postar pra gente?.. :slight_smile:

Nesse caso eu já tenho um Bean e Dao. Preciso de uma ponte do JSF para o Bean (se é q a minha lógica esta certa, hehe)

<h:inputText value="#{BeanCadastro.nome}"/>
<h:inputText value="#{BeanCadastro.telefone}"/>
<h:commandButton ????

Já postei o q vc deve fazer no seu outro post. O JSF é orientado a componentes, sendo assim vc PRECISA amarrar seu campo em um componente do BackingBean através do binding.

OLá Blz! Primeiramente queria agradecer pelo código de ontem, me serviu bastante… só que eu sou meio chato mesmo ;)… sempre procuro um modo mais facil para programar … o seu código está perfeito…

http://www.guj.com.br/posts/list/66040.java

só que eu busco um codigo mais simples possivel… não vejo produtividade nesse caso especifico… pq eu teria que fazer 3 classes (Bean, Backing Bean, dao) só pra fazer uma simples inserção de 2 campos ! imagine 30 campos… seria trabalhoso d+. Francamente ja estou quase desistindo desse JSF. Vc mesmo ou alguem que tenha mais conhecimento que eu pode me disser se é possivel passar ter outro modo menos trabalhoso, olhem esse link:

http://www.guj.com.br/content/articles/jsf/jsf.pdf

Estava dando uma olhada nesse tutorial e achei mais facil que os seu código, sem ofensa …rsrs… unica coisa que estou com difilculdade é separar as classes que estam tudo misturada… mas se eu fizer isso já não consigo fazer a inserçaõ. TIPO:

[code]
public String getNome() { return nome; }
public void setNome(String nome) { this.nome = nome; }
public String getTelefone() { return telefone; }
public void setTelefone(String telefone) { this.telefone = telefone; }

public String inserir() throws SQLException {
BeanCadastro b = new BeanCadastro();
DaoCadastro dao = new DaoCadastro();
b.setNome (???);
b.setTelefone(???);
dao.Salvar(b);
return “sucesso”;
}[/code]

Alguma coisa parecida com isso interagindo com o inputText, commandbutton do JSF

Olá!

Sem problemas :smiley:

Então kra, o JSF é assim mesmo. Eu aprendi a usar lendo o Core JavaServer Faces, e apesar de as vezes ser chato eu ainda gosto do JSF.
A arquitetura dele é assim para que a criação de aplicações web seja parecida com a criação de aplicações desktop, principalmente pelo fato de criar meios com que IDEs trabalhem de forma mais fácil com ele.

Eu particularmente não gosto desse artigo que voê passou o link, principalmente por ele não usar a arquiterua de componentes do Faces. A Talita “amarrou” os campos em Strings da classe, e essa não é uma prática muito legal.

Todos os frameworks orientados a componentes seguem o mesmo padrão.

Até mais!

“Quem persiste sempre alcança”, não falei que eu ia conseguir davidbuzatto ! :slight_smile:

Existe sim outra forma de pegar os valores dos campos do JSF, não precisa ter aquele trabalho de instanciar os componentes do JSF como tinha me passado. basta acrecentar o seguinte código no seu proprio BEAN, vou te passar, quem sabe te ajude algum dia…:

<h:inputText value="#{BeanCadastro.nome}"/>
<h:inputText value="#{BeanCadastro.telefone}"/>
<h:commandButton action="#{BeanCadastro.inserir}"/>

[code]

//gets e setters do bean !

public String inserir() throws SQLException {

BeanCadastro b = new BeanCadastro();
DaoCadastro dao = new DaoCadastro();

//aqui é a mãnha pra pegar os campos do JSF é só jogar os atributos nos parenteses .
b.setNome(nome); //atributo nome
b.setTelefone(telefone); //atributo telefone
dao.Salvar(b);
return “sucesso”;

}[/code]

valeu !!!