jsf – java sever faces
DESCRIPTION
Trabalho de FaculdadeJeanny Paiva LopesGabriel de Oliveira AparecidoUNIPAC - Ubá-MGTRANSCRIPT
JSF – JAVA SEVER FACES
O que é o JSF? JSF é uma tecnologia que incorpora características de um
framework MVC (Model-View-Controller) para WEB e de um modelo de interfaces gráficas baseado em eventos. Por basear-se no padrão de projeto MVC, uma de suas melhores vantagens é a clara separação entre a visualização e regras de negócio (modelo).
A idéia do padrão MVC é dividir uma aplicação em três camadas: modelo, visualização e controle. O modelo é responsável por representar os objetos de negócio, manter o estado da aplicação e fornecer ao controlador o acesso aos dados. A visualização representa a interface com o usuário, sendo responsável por definir a forma como os dados serão apresentados e encaminhar as ações dos usuários para o controlador. Já a camada de controle é responsável por fazer a ligação entre o modelo e a visualização, além de interpretar as ações do usuário e as traduzir para uma operação sobre o modelo, onde são realizadas mudanças e, então, gerar uma visualização apropriada.
O Padrão MVC segundo JSF No JSF, o controle é composto por um servlet denominado
FacesServlet, por arquivos de configuração e por um conjunto de manipuladores de ações e observadores de eventos. O FacesServlet é responsável por receber requisições da WEB, redirecioná-las para o modelo e então remeter uma resposta. Os arquivos de configuração são responsáveis por realizar associações e mapeamentos de ações e pela definição de regras de navegação. Os manipuladores de eventos são responsáveis por receber os dados vindos da camada de visualização, acessar o modelo, e então devolver o resultado para o FacesServlet.
O modelo representa os objetos de negócio e executa uma lógica de negócio ao receber os dados vindos da camada de visualização. Finalmente, a visualização é composta por component trees (hierarquia de componentes UI), tornando possível unir um componente ao outro para formar interfaces mais complexas.
Arquitetura JSF baseada no modelo MVC
Caracteristicas Permite que o desenvolvedor crie UIs através
de um conjunto de componentes UIs pré-definidos;
Fornece um conjunto de tags JSP para acessar os componentes;
Reutiliza componentes da página; Associa os eventos do lado cliente com os
manipuladores dos eventos do lado do servidor (os componentes de entrada possuem um valor local representando o estado no lado servidor);
Fornece separação de funções que envolvem a construção de aplicações Web.
Caracteristicas (cont.)JSF inclui: Suporte a internacionalização e acessibilidade; Um conjunto padrão de componentes de interface de
usuário que possibilitam validação padronizada; Duas bibliotecas de etiqueta ("tag libraries") especiais
do JavaServer Pages (JSP) para expressar a interface do JavaServer Faces dentro de uma página JSP;
Um modelo de eventos do lado servidor ("server-side event model");
Gerência de estados; Managed Beans (JavaBeans criados com injeção de
dependência ("dependency injection")); Linguagem de Expressão Unificada ("Unified
Expression Language") para JSP 2.0 e JSF 1.2.
Implementações Sun RI (Implementação de Referência. Apache MyFaces ECruiser
Apache MyFaces A fundação Apache vem envidando esforços
na implementação da especificação através do projeto MyFaces. O reconhecimento do trabalho é visto por diversas empresas, tanto é que a Oracle doou os fontes do ADF Faces, conjunto de mais de 100 componentes divididos em vários subprojetos, para o projeto MyFaces que o denominará de Trinidad.
Seus componentes são completamente compatíveis com a implementação de referência da Sun.
InstalaçãoFerramentas utilizadas: Tomcat 5.5 -
http://tomcat.apache.org/download-55.cgi
Apache MyFaces 1.1.5 - http://myfaces.apache.org/download.html
Criando uma aplicação Arquivos de configuração: faces-
config.xml, web.xml Arquivo JSP: helloworld.jsp Arquivo Java: HelloWorldBean.java
Criando uma Aplicação(cont.)Conteúdo da Aplicação
Conteúdo da Pasta lib
Criando uma Aplicação(cont.)
faces-config.xmlC:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\helloworld\WEB-INF
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><faces-config>
<managed-bean><managed-bean-name>helloWorldBean</managed-bean-name><managed-bean-class>br.eti.faces.HelloWorldBean</managed-bean-class><managed-bean-scope>request</managed-bean-scope>
</managed-bean>
</faces-config>
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EM“ "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <servlet> <servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class><load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>Faces Servlet</servlet-name><url-pattern>*.jsf</url-pattern>
</servlet-mapping></web-app>
web.xmlFormato XML
Inicialização do arquivo de configuraçãoConfiguração para a utilização do JSF no Servlet
Nome de identificação
Identificação das paginas processadas
Formato XML
Inicialização do arquivo de configuração
Classe para trabalhar com JSF Parametros da Classe:
NOMECLASSE UTILIZADACOMPORTAMENTO
Criando uma Aplicação(cont.) helloworld.jspC:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\helloworld
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%><%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%><html> <title>Exemplo JSF</title>
<body bgcolor="#000000" text="#FFFFFF"><center><font size="4" face="Arial, Helvetica, sans-serif"><strong>
<f:view><h:form>
<h:outputText value="#{helloWorldBean.message}"/>
</h:form></f:view>
</strong></font></center>
</body></html>
HTML
Principal tag do JSFFormulario
Componente JSF para imprimir texto/Expressão EL
Criando uma Aplicação(cont.) HelloWorldBean.javapackage br.eti.faces;
public class HelloWorldBean{
private String message;
public HelloWorldBean() {message= "Exemplo de Aplicação JSF. Olá Mundo!";
}
public void setMessage(String message){this.message=message;
}
public String getMessage(){return message;
}
}
C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\webapps\helloworld\WEB-INF\classes\br\eti\faces
Criando uma Aplicação(cont.) Compilação
Criando uma Aplicação(cont.) Resultado:
Referências www.guj.com.br http://pt.wikipedia.org/wiki/JavaServer_F
aces