Olá boa tarde,
sou novato em Ajax e gostaria de saber como utilizar o Ajax para chamar um método no meu bean. Bem simples, não quero que ele envie nada, apenas chame o método no Bean.
Olá boa tarde,
sou novato em Ajax e gostaria de saber como utilizar o Ajax para chamar um método no meu bean. Bem simples, não quero que ele envie nada, apenas chame o método no Bean.
isso vai variar da forma que tu está executando o teu ajax.
Mas a maneira mais simples seria a seguinte:
1- criar um servlet
2- nesse servlet, colocar dentro do método doGet ou doPost o teu bean
3- fazer o resultado dessa chamada do bean ser o output do teu servlet (ex.: você quer chamar um método que retorna uma String e quer que essa string apareça por ajax em algum outro lugar)
4- capturar o resultado no javascript e mostrar
basicamente é isso
Se quiser ir mais além, tu pode criar o teu bean pra ter métodos remotos e, dessa maneira, pelo DWR, chamá-lo via javascript, por ajax. É bem legal, dá um olhada nesse framework.
Nem preciso mostrar nada quero apenas chegar até o bean, será que pelo Ajax não tem como chegar direto no bean sem precisar do servlet??
aí não tem como amigo, porque tu vai estar chamando por javascript. Como que o javascript vai acessar um java bean por exemplo?
Por isso que a única maneira é essa. Vai ter que estar rodando em um application server um servlet que vai acessar o teu bean. A maneira mais fácil, na minha opinião, é usando o DWR, porque são poucas configurações e tu já sai criando “beans” chamáveis pelo javascript, é bem interessante:
Esse é o site do framework: http://directwebremoting.org/
Se você estiver utilizando uma implementação como richfaces, é possível fazer isso de forma simples e prática usando o a4j:support por exemplo.
ah, mas tu tá falando de um Backing/Managed bean ou de um Java Bean?
backing/managed Bean e naum estou usando richfaces
Então aconselho a você usar o Richfaces para poder usar o a4j.
Antigamente era separado (A4J e RichFaces) mas agora eles pertencem ao mesmo projeto.