uma abstracao do ambiente de portal para o ambiente do bridge, deixando os desenvolvedores livres para executar aplicacoes Faces como portlets, sem a necessidade de conhecerem os detalhes das APIs de portlet e seu modelo de desenvolvimento.A Figura 2 ilustra uma aplicacao portlet utilizando o JSF/Portlet Bridge para executar paginas Faces como se fossem fragmentos de um portletFigura 2. JSF/Portlet Bridge entre uma aplicacao Portlet e uma aplicacao JSF.Transformando sua aplicacao JSF em um portletPara tornar uma aplicacao JSF compativel com a JSR 168/286 e preciso fazer algumas alteracoes na aplicacao antes de executa-la como um portlet.Primeiro, para utilizar o JSF Portlet/Bridge e preciso efetuar o download da biblioteca jsf-portlet.jar no site java.net (ver ao final, em Referencias) e copia-la para o diretorio WEB-INF/lib da aplicacao JSF que voce deseja executar como portlet.Uma vez adicionado o arquivo .jar ao classpath da aplicacao, e preciso adicionar o arquivo deployment descriptor portlet.xml para o portlet. Neste arquivo vamos informar a classe com.sun.faces.portlet.FacesPortlet para a tag portlet-class. Esta classe e a implementacao da interface javax.portlet.Portlet fornecida pela biblioteca do JSF/Portlet Bridge, e e ela que fara o trabalho de converter as paginas JSF para paginas de visualizacao no Portlet.E preciso tambem informar qual pagina queremos utilizar como pagina inicial do portlet, informando o parametro de portlet com.sun.faces.portlet.INIT_VIEW para a pagina desejada, conforme mostra a Listagem 1 entre as linhas 08 e 15. Portlet JSF Teste Portlet JSF/Portlet Bridge <!Incluir esta classe para a implementacao de Portlet --> com.sun.faces.portlet.FacesPortlet <!Parametro obrigatorio, que deve indicar a pagina inicial da aplicacao JSF -> Pagina inicial do Portlet com.sun.faces.portlet.INIT_VIEW /index.jsp text/html VIEW EDIT HELP Portlet JSF JSF Listagem 1. Portlet.xml de uma aplicacao JSFPara incluir a pagina de edicao do portlet, o procedimento e similar. Nos parametros iniciais do arquivo portlet.xml, devemos incluir o parametro de portlet com.sun.faces.portlet.INIT_EDIT, conforme o trecho da Listagem 2. Essa acao fara com que o conteiner de portlets interprete a pagina JSF editar.jsp citada na listagem, como modo de visualizacao EDIT. Pagina de Edicao do Portlet com.sun.faces.portlet.INIT_EDIT /editar.jspListagem 2. Inclusao da pagina de edicao JSF no portletO mesmo se aplica para a pagina HELP, com a inclusao do parametro com.sun.faces.portlet.INIT_HELP.Alem disso, se em nossa aplicacao houver mais de uma pagina, podemos atribuir regras de navegacao para cada uma destas paginas, e por ser uma aplicacao JSF o modelo de navegacao e o do proprio JavaServer Faces.O modelo de navegacao do JSF torna facil o trabalho de definir a regra de navegacao das paginas do projeto, com a utilizacao de apenas algumas linhas no arquivo faces-config.xml da aplicacao JSF. Podemos indicar qualquer pagina do portlet como referencia para navegacao, conforme demonstra a Listagem 3.Na Listagem 3, utilizamos o modelo de navegacao declarativo do proprio JSF para definir a navegacao de um portlet. Como nao e o escopo deste artigo, nao iremos explicar o funcionamento das regras de navegacao do JavaServer Faces, mas apenas para ilustrar, nesta listagem definimos uma regra que ao ser disparada uma acao na pagina editar.jsp, a aplicacao ira navegar desta pagina para a pagina index.jsp, se o resultado referenciado pelo componente