JavaServer™ Faces
31 de maio de 2005
Rio de Janeiro - O JUGSERPRO, grupo de usuários Java™ do SERPRO (Serviço Federal de Processamento de Dados), e a UniSerpro, Universidade Corporativa do SERPRO, realizam, no dia 31 de maio de 2005, o seu segundo evento do ano – o Workshop JavaServer™ Faces.
Introdução
Houve um tempo em que o desenvolvimento de sistemas para web consistia-se em escrever tags HTML usando apenas um editor de textos, sem qualquer funcionalidade que auxiliasse o desenvolvedor nesta tarefa. Logo surgiram ferramentas que adicionaram uma série de recursos, como o famoso “drag-and-drop”, que possibilitaram acelerar o processo de criação. Eram conhecidas como ferramentas RAD, de Rapid Application Development.
Mas a internet evoluiu consideravelmente e, por conseqüência, cresceu a demanda por sistemas web com maior complexidade. Em função disso Java™ tornou-se uma opção bastante atrativa para o desenvolvimento de aplicações web que necessitavam de maior segurança, robustez e escalabilidade. Porém esbarrava na dificuldade de gerar resultados em curto espaço de tempo, como as ferramentas RAD.
A Sun, ciente do problema, em 2003 criou o “Projeto Rave”, que vinha a ser a nova geração de ferramentas que atendia a três requisitos:
· Aumentar a produtividade enquanto reduz o tempo de desenvolvimento;
· Reduzir a complexidade do processo de desenvolvimento;
· Produzir soluções portáveis baseadas em padrões de interoperabilidade.
O Rave serviu de base para a JSR-127, aprovada pelo JCP em 2004 com o nome JavaServer™ Faces.
JavaServer™ Faces é a especificação resultante da JSR-127 que define uma arquitetura e um conjunto de APIs para a criação e manutenção de aplicações J2EE™ cujo objetivo é estabelecer um padrão de tags JSP e classes Java™ de modo a facilitar para o desenvolvedor a criação de formulários HTML complexos e outras interfaces gráficas baseadas em Servlets e JSP. O seu suporte à internacionalização e validação da entrada de dados é um de suas características.
JSF, como já foi dito, é uma especificação e, portanto, não é uma implementação. Neste caso o desenvolvedor que pretende usar JSF em seus projetos web deve adotar um IDE de mercado que dê suporte à especificação. Existem alguns IDE’s que já suportam o desenvolvimento visual de aplicações usando o JavaServer™ Faces, entre elas o Sun Java Studio Creator e o Rational Application Developer, da IBM.
Mas há opções para os que preferem soluções open source.O MyFaces, disponível no sourceforge.net, é a primeira implementação free de JavaServer™ Faces. Este projeto cresceu tanto e tomou tanta importância que em março desse ano migrou para a Apache Software Foundation. E para os admiradores do IDE Eclipse, já existem plugins, gratuitos ou pagos, que adicionam funcionalidades ao IDE para criação de aplicações tipicamente JSF.
Conclusão
Com o JavaServer™ Faces é possível criar aplicações web com alto nível de reuso de código e componentes, sendo possível definir eventos server-side, além de facilidades para a criação de eventos do lado do cliente sem a necessidade de se adicionar um atributo via linha de código, a versão 2.0 do JSF virá com suporte à comunicação entre frames e janelas, tal como aperfeiçoamentos para uso em IDE’s.
Sem dúvida o JavaServer™ Faces surge como um grande concorrente do ASP.NET, juntando o que há de melhor em tecnologia já estabelecidas no mercado, como as taglibs (JSTL) e o framework Struts.
Se já estiver usando um framework server-side como o Struts, você verá que o JavaServer™ Faces utiliza uma arquitetura semelhante, porém mais flexível e extensível. Java Server faces nada mais é que a junção do que o Struts tem a oferecer à nível de camada de controle junto com o JSTL ou Taglibs para uso na camada de apresentação. O JavaServer™ Faces também vem com componentes server-side e um modelo de eventos, que são fundamentalmente semelhantes aos mesmos conceitos no Swing.
Programação
Simplificando o desenvolvimento na camada Web com JavaServer Faces
Michael Yuan (Sun)
Espaço para perguntas e respostas
Coffeebreak
DEMO 1: Criando aplicações JavaServer Faces com o Java Studio Creator
Michael Yuan (Sun)
Espaço para perguntas e respostas
Almoço
DEMO 2: Construindo aplicações JSF utilizando o Rational Application Developer (RAD)
Wagner Lindberg Baccarin Arnaut (Rational IBM)
Espaço para perguntas e respostas
Coffeebreak
DEMO 3: A confirmar
Espaço para perguntas e respostas
Inscrições
Os interessados deverão enviar até o dia 29, antevéspera do evento, um e-mail para paulo.raibolt@serpro.gov.br com nome completo, CPF, identidade, Empresa/Universidade e e-mail para confirmação de inscrição. A organização do evento irá enviar um e-mail de confirmação até o dia 30. O evento é gratuito e aberto a todos.