hehe nao sei se expliquei muito bem no assunto, e vo tenta explicar melhor aqui com imagens…
a duvida é como que aqui dentro action="#{pacienteBean.buscaPaciente(‘aqui’)}" eu faço pra chama o que eu escrevi no inputtext com o id=“busca”. é possível?
se eu deixar ‘aqui’ vai passar sempre aqui como valor… rsr
1° eu tenho meu DaoGenerico dao;
public List<Paciente> buscaPaciente(String parte) {
String hql = "from Paciente d where d.nome like :filtro";
Query q = em.createQuery(hql);
q.setParameter("filtro", "%" + parte + "%");
return q.getResultList();
}
2° eu tenho meu ManagedBean chamado PacienteBean;
public void buscaPaciente(String parte){
pacientes = dao.buscaPaciente(parte);
}
3° eu tenho meu .xhtml que tem um campo para inserir texto e um botão:
<input type="text" name="busca" id="busca" value="Nome" onfocus="if(this.value=='Nome'){this.value=''};" onblur="if(this.value==''){this.value='Nome'};" style="width:220px;" />
<h:form><h:commandButton value="Buscar" action="#{pacienteBean.buscaPaciente('')}"></h:commandButton></h:form>


Olá alandiniz!
A passagem de parâmetros agora é possível através da EL 2.2. O Tomcat 7 já traz essa nova implementação. Não sei qual servidor web você está utilizando, mas procure um que dê suporte a especificação 2.2 da Expression Language.
Espero ter ajudado. Abraços!!!
Olá, Fabricio Vallim
Estou usando o apache-tomcat-7.0.12 com JSF 2.1
Mas como seria a implementação no código pra min pegar o valor do input text ? seria a partir do id dele?
Cara, tenta assim:
PacienteBean;
private String nomePaciente;
//get and set nomePaciente
public void buscaPaciente(){
pacientes = dao.buscaPaciente(nomePaciente);
}
seu xhtml
<h:form>
<input type="text" name="busca" id="busca" value="#{pacienteBean.nomePaciente}" onfocus="if(this.value=='Nome'){this.value=''};" onblur="if(this.value==''){this.value='Nome'};" style="width:220px;" />
<h:commandButton value="Buscar" action="#{pacienteBean.buscaPaciente}"></h:commandButton>//linha editada: tirado parenteses na chamada do método buscaPaciente
</h:form>
rdfmartins
intão assim funciona… colocando getters and setters e no action ali nao pode ter () senão ja chama direto…
- pensei q dava pra faze da outra forma
vlw
Por favor, não banalize as tags como [Resolvido] usando para colocar dados inúteis como [Ajuda] ou [Dúvida]. Como todos os nossos tópicos se referem a ajuda ou a dúvidas, não tem porque dar tanto destaque ao óbvio.