3 Passos como passar parâmetros por URL em JSF

3 Passos como passar parâmetros por URL em JSF. Para quem é do mundo web e está acostumado a trabalhar com servlets passando e recebendo valores pela url, quando decide se aventurar no mundo do JavaServer Faces com certeza irá esbarrar em algum momento com a pergunta: Como passar um parâmetro pela url ?. Como o JSF faz tudo isso por debaixo dos panos como poderia ser passado e resgatado um parâmetro igual eram com as servlets e com os JSP. Adiante eu respondo essa pergunta pra você de uma forma bem simples e direta.

Vamos supor que é preciso disponibilizar uma URL para que seus clientes façam consultas a sua base de dados e possam ver o resultado no próprio navegador, mas o seu projeto não é um web service, e agora ?

Exemplo para a URL seria : http://127.0.0.1:8080/caixaki/cadastro/financeiro/buscaCidade.jsf?codigoCidade=10

jsf-logo

Podemos ver que o a nossa página de exibição será buscaCidade.jsf e após sua declaração temos a passagem do parâmetro codigoCidade=10 ambos separados pelo interrogação que define a página e seus parâmetros.

Passo 1 – A parte do modelo

Temos abaixo um típico caso de um para muitos, nele consta as anotações do Hibernate/Jpa que abordarei em outro post. Essa classes representam a estrutura de nossa base de dados.

classe-cidade classe-estado

Passo 2 – A página de consulta em JSF

Abaixo a nossa página básica feita em JSF apenas para exibir a consulta retornada pela requisição que será disparada pela URL. Pode reparar que o nome dado para nosso ManagedBean  com a anotação @ManagedBean(name = “managedBeanBuscaCidade”) está sendo referenciado nas taglib é dessa forma que ao chamar a página  consultaCidade.jsf o nosso bean gerenciado é encontrado e executado.

consulta-cidade-jsf

Passo 3 – O ManagedBean 

Nosso ManagedBean do JSF que controla a página de exibição, você pode reparar algumas anotações do Spring mas caso não esteja usando não mudará em nada o processo final. Abaixo segue código comentado detalhadamente para melhor entendimento.

managedbean-consulta-cidade

@RequestScoped definição do Bean para o Scopo de request, nosso bean não poderá ser de outro scopo porque queremos que a cada URL seja criada uma nova requisição e que seja executado nosso método buscarCidadePorUrl().

@PostConstruct esse é o segredo, essa anotação é própria do JSF e diz que o método anotado com ela será executado após a construção do nosso ManagedBean como o escopo é de request a cada nova URL acionada no navegador nosso método será executado e retornará os dados para a página que será exibida.

Abaixo temos o principal código que mostra como acessar os atributos da requisição em JSF.

request-jsf

Pode reparar que foi usado cidadeController para consultar ao banco de dados, você pode usar qualquer implementação para tal rotina.

Resultado final, quando informamos nossa URL automaticamente a página é retornada com os dados.

resultado-jsf-url

Pronto agora você pode disponibilizar um serviço de consulta para seus clientes e distribuir as URL.

Mais de 200 aulas curso completo em JSF 2.2
JSF 2.2 e PrimeFaces
Curso completo em JSF 2.2 com PrimeFaces, Spring e Hibernate. Iremos do básico ao avançado em JSF.
2.985 alunosHoras do curso 100h Horas do curso certificado
Promoção R$ 189
12x de R$ 18,41
A melhor forma de aprender a desenvolver sistemas em Java é tendo como exemplo um projeto e curso completo onde possa observar o código para melhor entendimento do funcionamento das rotinas a acompanhar as vídeos aulas de desenvolvimento. Esse curso contém tudo que um desenvolvedor precisa saber para entrar no mercado de trabalho.
Rotinas avançadas para o dia a dia web
Top 10 Java EE
Ensinaremos passo a passo o desenvolvimento de rotinas avançadas e super importantes em Java Web.
536 alunosHoras do curso 15h Horas do curso certificado
Promoção R$ 49
5x de R$ 10,54
Todo programador deve dominar as seguintes técnicas em desenvolvimento de sistemas abordadas por este curso completo.


Acesse
Cursos e Projetos
Java
Acesse
Outros Cursos
PHP MySQL Android
Acesse
Encomende um Projeto
Feito pra Você
Acesse
Tire as Dúvidas On-line
Consultor
Acesse
Aulas de Java só suas
Encomende Agora
Acesse
Dividindo Conhecimento
Posts e Tutoriais
Acesse
Sites e Parceiros
Associados
Acesse
Conheça os curso gratuitos
Grátis
Instrutor Java Quer se tornar aluno VIP? CLIQUE AQUI!
Instrutor Java

Alex Fernando Egidio
Autor, criador e fundador do Java Avançado Cursos TI. Atua no mercado como desenvolvedor e engenheiro de sistemas em Java é apaixonado por desenvolvimento web em Java e pela “mágica” que seus frameworks trazem para o dia a dia de nós desenvolvedores.
Com mais de 10 anos de experiência ajuda programadores do Brasil todo a se tornarem profissionais.