* Visite o ALJUG - http://aljug.blogspot.com - Noticias sobre a comunidade java alagoana e do mundo * Visite o blog Mundo Gamificado www.mundogamificado.com.br - E vamos mudar o mundo! *

quinta-feira, 14 de janeiro de 2010

Declarando o scpoe de um bean no netbeans 6.8


Olá pessoal faz um tempo que não escrevia mas estou de volta. Hoje vou falar sobre a declaração de scope do netbeans 6.8.

Toda vez que você cria uma classe nova, o primeiro passo para ser referenciado em algum componente web por exemplo h:inputText, é declarar qual o scope desse bean, que os mais comuns são:

Session, request e application.

Lembrando que o scope é declarado no faces-config.xml.

No eclipse quando clicamos no faces-config.xml no lado esquerdo tem uma árvore cuja uma das opções é Manager-Bean, um estilo gráfico, quando acostumado com esse visual e depara com o netbeans que só tem duas opções ,que são fluxo de página e XML, pode ficar perdido e começar a curiosidade de mexer ou de procurar na internet. Pois bem vou citar aqui dos dois modos no netbeans tanto escrevendo a "mão" como também no modo "gráfico", primeiro vamos iniciar a "mão".



Primeiro quando você cria um projeto JSF no netbeans e começa a programar, você indo no faces-config.xml vai dá de cara com esse código:


<?xml version='1.0' encoding='UTF-8'?>



<!-- =========== FULL CONFIGURATION FILE ================================== -->



<faces-config version="1.2"

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">





</faces-config>




ou está na situação em que fez a classe java, acabou o modelo da página web e no out e/ou inputText o bean não se encontra na lista que aparece quando coloca #{} e vai no faces config.xml e não tem nenhum campo visual para declarar o bean. Se pergunta logo, eu vou ter que fazer a mão, poxa!



Mas vou explicar agora para você.



Entre faces-config e /faces-config> você vai declarar a classe o pacote e o scope na sequência por exemplo:



Começa com o manager-bean


<manager-bean>

</manager-bean>






Depois vai colocar o nome do bean, ou seja o nome da classe que você criou.





<managed-bean-name>Classe</managed-bean-name> lembre da distinção de letra maiúscula e minúscula







Logo após irá colocar o nome do pacote mais o nome da classe:





<managed-bean-class> br.com.Classe</managed-bean-class>







E em seguida vai colocar a classificação que você deseja do bean(session,request ou application):

Nesse caso, session



<managed-bean-scope>session</managed-bean-scope>





Pronto, está declarado seu bean, o mesmo completo fica desse jeito abaixo:



<manager-bean>

<managed-bean-name>Classe</managed-bean-name>

<managed-bean-class> br.com.Classe</managed-bean-class>

<managed-bean-scope>session</managed-bean-scope>

</manager-bean>



Mas caso não quiser muito trabalho então faça da seguinte maneira:



Basta entrar no faces-config.xml, ir em XML depois em algum espaço em branco clicar com o botão direito e clicar em Inserir>Bean Gerenciado.



Lá você irá ter quatro campos dos quais serão mais usados três deles que são:



Nome do bean;

Classe Bean; e

Escopo.



Lembrando nosso exemplo na mão, basta colocar da seguinte forma:



Nome do Bean: Classe

Classe Bean: br.com.Classe

Escopo: session



e pronto ta declarado seu bean.



<h:inputText value="#{Classe.variável}">





Até à próxima pessoal.