JavaServer Faces
| JavaServer Faces | |
|---|---|
| | |
| Tipo de | estrutura da web |
| Autor | Sun Microsystems |
| Desenvolvedor | Sun Microsystems |
| Escrito em | Java |
| Sistema operacional | Software multiplataforma |
| Plataforma de hardware | Edição Empresarial da Plataforma Java |
| última versão |
|
| Licença | Eclipse Public License 2.0 [d] e exceção de vinculação GPL [d] |
| Local na rede Internet | javaserverfaces.java.net |
| Arquivos de mídia no Wikimedia Commons | |
JavaServer Faces (JSF) é uma especificação Java para construir interfaces de usuário orientadas a componentes para aplicações web, escritas em Java . Serve para facilitar o desenvolvimento de interfaces de usuário para aplicativos Java EE . Ao contrário de outras estruturas MVC que são orientadas por solicitação, a abordagem JSF é baseada no uso de componentes. O estado dos componentes da interface do usuário é salvo quando o usuário solicita uma nova página e, em seguida, restaurado se a solicitação for repetida. JSP , Facelets geralmente são usados para exibir dados , mas JSF também pode ser adaptado para outras tecnologias, como XUL .
A tecnologia JavaServer Faces inclui:
- Um conjunto de APIs para representar componentes de interface do usuário ( UI ) e gerenciar seu estado, manipulação de eventos e validação de entrada, definições de navegação e suporte para internacionalização ( i18n ) e acessibilidade.
- Uma biblioteca de tags JSP especial para expressar uma interface JSF em uma página JSP. O JSF 2.0 usa Facelets como um manipulador de visualização, substituindo o JSP.
Projetado para ser flexível, o JavaServer Faces aproveita os conceitos de interface de usuário padrão (UI) e de camada da Web existentes sem bloquear o desenvolvedor em uma linguagem de marcação, protocolo ou dispositivo cliente específico. As classes de componentes de UI enviadas com a tecnologia JavaServer Faces contêm a funcionalidade do componente em vez da renderização específica do cliente, permitindo assim que os componentes JSF sejam renderizados em diferentes dispositivos clientes. Ao combinar a funcionalidade dos componentes da interface do usuário com renderizadores personalizados, os desenvolvedores podem construir tags personalizadas para um determinado dispositivo cliente. Como conveniência, a tecnologia JSF fornece um renderizador específico e uma biblioteca de tags JSP especial para renderização em um cliente HTML , permitindo que os desenvolvedores de aplicativos da plataforma J2EE usem a tecnologia JSF em seus aplicativos.
Versões JSF
- JSF 1.0 (03/11/2004) - lançamento inicial sob a especificação JSF
- JSF 1.1 (27/05/2004) - correções de bugs. Não há mudanças significativas.
- JSF 1.2 (11.05.2006) - correções de bugs. Não há mudanças significativas.
- melhorias fornecem uma solução temporária para o problema de conteúdo confuso [3]
- fornece esquema XML para arquivos de configuração em vez de usar DTD
- os aprimoramentos permitem que os aplicativos funcionem com interfaces de usuário com vários quadros ou várias janelas.
- f: melhorias na biblioteca de tags para melhorar a cobertura do TCK , f: visualizar eventos do ciclo de vida e outras pequenas melhorias.
- suporte de decorador aprimorado para objetos de API
- o procedimento para salvar o estado do cliente ficou mais protegido.
- resolveu o problema de clicar duas vezes no botão
- a especificação foi re-particionada em partes padrão e não padrão para facilitar a implementação
- bugs corrigidos relacionados a portlets
- pequenas correções de especificações
- JSF 2.0 (19/10/2009) - Grande revisão da especificação baseada na experiência de desenvolvimento. Mesclado com Java EE 6.
- JSF 2.1 (22/11/2010) - Versão de manutenção para suporte a JSF 2.0. Poucas mudanças na especificação.
- JSF 2.2 (21/05/2013) - Introduziu novos conceitos, como estado sem estado, fluxo de página e a capacidade de criar contratos de recursos portáteis.
- JSF 2.3 (28/03/2017) - Principais recursos: pesquisas de expressão, URLs sem extensões, validação de bean para classes completas, mensagens push usando WebSocket , integração CDI aprimorada.
Crítica
As versões 1.* do JSF não forneciam suporte de alto nível para lidar com solicitações GET [4] , o que tornava muito mais difícil desenvolver aplicativos baseados em princípios REST . Na segunda versão da especificação, essa deficiência é quase completamente eliminada.
O designer da linguagem Java, James Gosling , descreveu a tecnologia JSP por trás do JSF como “um projeto clone Microsoft ASP que foi criado apenas para demonstrar o quão ruim é a ideia; mas por alguma razão o modelo recusou-se a morrer” [5] .
Bibliotecas e componentes
- PrimeFaces
- MyFaces
- Tomahawk Arquivado em 28 de maio de 2014 no Wayback Machine
- Trinidad Arquivado em 13 de abril de 2010 no Wayback Machine
- Tobago
- Orquestra Arquivado em 13 de outubro de 2009 no Wayback Machine
- ICEFaces
- cara aberta
- Caras Ricas [6]
Veja também
Notas
- ↑ Versão 3.0.0 - 2020.
- ↑ Versão 4.0.0 - 2022.
- ↑ Hans Bergsten. Melhorando JSF por Dumping JSP (inglês) (downlink) (9 de junho de 2004). Recuperado em 8 de agosto de 2009. Arquivado do original em 22 de fevereiro de 2012.
- ↑ Andy Schwartz Blog: O que há de novo no JSF2? . Recuperado em 2 de outubro de 2010. Arquivado a partir do original em 5 de outubro de 2010.
- ↑ James Gosling sobre Apple, Apache, Google, Oracle e o Futuro do Java. 0:48:22 . Recuperado em 28 de setembro de 2017. Arquivado a partir do original em 22 de abril de 2017.
- ↑ Página inicial do RichFaces (inglês) (link não disponível) . Recuperado em 1º de abril de 2010. Arquivado do original em 22 de fevereiro de 2012.
Links
- Tecnologia JavaServer Faces
- Introdução ao Java Server Faces
- Introdução ao JavaServer Faces 1.2 em ibm.com . (Russo)
- Exemplo de aplicativo JSF em Java (russo)
- Exemplo de aplicativo JSF para Tomcat (russo)
- Uma seleção de artigos sobre desenvolvimento web em JSF (russo)
Literatura
- David M. Gehry, Kay S. Horstmann. Java Server Faces. Biblioteca Pro = JavaServer Faces. ESSENCIAL. - 3ª edição. - M. : Editora "Williams", 2011. - 544 p. - ISBN 978-5-8459-1706-5 , 978-0-13-701289-3.