" # $ %&'( ) *' ( +,)+ ( - $ (+*' 0 12 ' ( %+ -12 )+3 ) (4 )) ) % 12 ) *' (



Documentos relacionados
Java II. Sérgio Luiz Ruivace Cerqueira

Aplicações de Linguagem de Programação Orientada a Objeto

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr

Tecnologias Web. Java Enterprise Edition

Desenvolvimento Web TCC Turma A-1

Universidade São Judas Tadeu. Faculdade de Tecnologia e Ciências Exatas. Sistemas de Informação 3ASIN

Desenvolvimento de aplicações Web. Java Server Pages

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Curso de Java. Geração de Páginas WEB através de JSP. Todos os direitos reservados Klais

!" # # # $ %!" " & ' ( 2

JSP Java Server Pages

JSP (Java Server Pages)

Estudo Dirigido - Parte 1

Objetos Implícitos. Conceito. Instanciados pelo próprio contêiner. Disponíveis em quaisquer páginas JSP.

JSP - JavaServer Pages

Associação Carioca de Ensino Superior Centro Universitário Carioca

Java na WEB Componentes Bean

JavaServer Pages (JSP) Leonardo Gresta Paulino Murta

UNIDADE III JAVA SERVER PAGES

Java para Desenvolvimento Web

J550 JavaServer Pages

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

JavaServer Pages. Também são conhecidas pela sigla correspondente (JSP). Representam mais uma tecnologia da plataforma JEE.

Tecnologias para Web

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

ProgramaTchê programatche.net Programação OO com PHP

Java II. Sérgio Luiz Ruivace Cerqueira

Java para Desenvolvimento Web

Servlets, JSPs e Java Beans

JSP: JAVA SERVER PAGES

Java na WEB Servlet. Sumário

J2EE. Projeto de Sistemas de Software

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão

WebWork 2. João Carlos Pinheiro.

Java Server Pages JSP

Java para WEB. Servlets

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API

Programação II Programação para a Web. Christopher Burrows

Programação Web Aula 12 - Java Web Software

Aula 03 - Projeto Java Web

JSP: JAVA SERVER PAGES

Objetivos. Aprender o que são JavaBeans e como podem ser usados em páginas JSPs Usando ações-padrão ao invés de scripts

TUTORIAL JSP & SERVLET

Servlets & JSP. Prof. Ramon Chiara

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets

Laboratório 8 JSP s, EL, JSTL

A composição de uma Java Server Pages (Diretivas, Elementos de Script e Objetos Implícitos)

Conhecendo um pouco mais o servidor Apache TomCat

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

AULA APLICAÇÕES PARA WEB SESSÕES E LOGIN E SENHA

RESUMO DOS IMPORTANTES

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

INTRODUÇÃO AO DESENVOLVIMENTO WEB

Os componentes de um formulário são: Form, Input, Select e AreaText

JSP e Servlet Princípio de MVC

Java Server Pages (Diretivas, Elementos de Script e Objetos Implícitos)

Java Server Pages. O código HTML pode indicar o método de arranque do servlet gerado por um JSP : doget ou dopost.

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha

JSP (Java Server Pages)

J550 JSP com tags padrão

Programação web Prof. Wladimir

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

JSP (JAVASERVER PAGES)

COMO FUNCIONA UM FORMULÁRIO

Desenvolvimento Web TCC Turma A-1

Servlets/JSP/JSF. Prof. Cedric Luiz de Carvalho INF/UFG. Desenvolvimento de Aplicações Web com Interfaces Ricas - 04 / 2010

Minicurso de MVC web com Struts. Felipe F Nascimento felipenasc@inf.puc-rio.br

Material de apoio a aulas de Desenvolvimento Web. Tutorial Java WEB JSP & HTML & CSS & CLASSE & OBJETOS. AAS -

AULA 08. Sintaxe JSP. Prof. André Luis Schwerz.

Prática Sobre Servlets e JSP

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Introdução a JavaServer Pages. Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web

programação de páginas de conteúdo dinâmico

Java na WEB Banco de Dados

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Desenvolvimento Web com JSP/Servlets

AULA 03 JAVA ENTERPRISE EDITION - DESENVOLVENDO APLICAÇÕES CORPORATIVAS

Criando documentação com javadoc

Scriptlets e Formulários

Acessando um Banco de Dados

Programação para Internet I

Introdução ao PHP. Prof. Késsia Marchi

Repeater no GASweb. Regiões

Relatório referente a compreensão da programação JSP. Realizado do dia de 22 abril de 2010 a 03 de maio de 2010.

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

PHP. Hypertext Pre-Processor

Prof. Roberto Desenvolvimento Web Avançado

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

ASP Active Server Pages. ASP (Active Server Pages)

mkdir /srv/www/default/html/calculadora/imagens mkdir /srv/www/default/html/calculadora/blocos

Programação em Rede. Servlets. Manipulação de dados de input em Servlets

Introdução. Entendendo os Controles. Definindo um controle. Introdução MOCKDOMAIN() Testando uma classe de domínio mockdomain

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Programação Web 2:! Introdução a JSP! Mestrado em Engenharia Informática Universidade do Minho! 290! Deliver information, not just data

Transcrição:

!

" # $ %&'( ) *' ( +,)+ ( - $ (+*'.%/ 0 12 ' ( %+ -12 )+3 ) (4 )) ) % 12 ) *' ( 2

(5) '%'1%6% %/ )1%12 74 % +1%() %% % *8) + 9 "(:4 8) % ; *' 3

"( % '% + 4% % ) +' 455 %' 4 *' ( +% ) + %,)1 0 +<%' (5 +<%'%% dopost() )doget()%) + response4request4out4session) *%% 4

" %<%'=) )% 4 + 8)( 8) ) ) <%' ) >5 *)%"?% + ' ( 5 4 )1%12 ) 4% %) % + 5)% 5

! " " # $%$&' # %%($&)**$&) +!,- &- ' "./01+" 2 3 3 " $/456,7" 2$8% 9! 16,71$/45" "

" *' (%+ %)% ) +4 ')% % =% 0 15% %%% ) %(@& 5A " 15 > ) 8B 48) 15 %% +8)'% %*' 7

Navegador do cliente 1. O cliente requisita uma página 7. A resposta é retornada ao cliente em formato HTML 6. O servlet gera a resposta Servidor Web Servlet 2. O servidor web repassa-a ao contêiner Contêiner JSP 5. O contêiner executa o servlet 3. A página JSP é transformada em um Servlet, se o servlet não existir ou for mais antigo Tradutor de página JSP em Servlet (Jasper) 4. O servlet gerado e compilado é repassado ao conteiner Fica totalmente transparente para o desenvolvedor de aplicações e para o usuário que requisitou a página. Resulta em velocidade de execução (para acessos repetidos) superior a outras tecnologias similares (ASP, PHP) 8

!"" #(4 +45) 1 ) %) % 004(%+) +)% ) 1 ), ( +%%, "?%+4 %8) +% )1%*' 9

!"" C)1 ( ) )%' :&D E 1 +@JavaBeansA % +% " 1(@ A,%% ) ' ) % @&' &'A #% +% % % ' %% ) *'(4+ %% ++% ) < ' " % %+ $ 4 )) ) '% 6 %' %% 45 %%)1% 1 10

!"" C)1@)1A %') %1 %%) %' %F (E& G' 4% 2 4 1 %,) +%% ) "(E&4 5 4) ) % 0, E')'@0EA + ) ) "0E ) % 1( 4 % % $+ 8) )%(E& 11

" %%) (45 D)%, %) 8)+:&D E %) ) +%8) ) ( G% 4*' * % ) + 0, <html><head><title>primeiro Exemplo</title></head> <body> <strong>seu número da sorte é:</strong> <%= (int)(java.lang.math.random()*1000) %> </body> </html> 12

#$ * 0, 2 ( 12 + "12 &' <%-- comentário --%> <%= Math.sqrt(9) %> <% código java %> <%! int contador= 0 %> <%@ atributo = valor %> <jsp:ação /> <prefixo:elemento /> # +1&% % +% @ ' 7 A 13

% $ FONTE: http://www.argonavis.com.br/cursos/java/j550/j550_9.pdf (slide 7)

#$ # * ) *'(% %) * :&D E<!- comentário --> (+% ) % 6%%*' * (<%-- comentário --%> >*'+% 15

& (<%'+ % *':&D E% ') <%= Expressão %> H)%*'5 % )15,)% )%5 %*' ) (' %) 0, <%= (int)(mah.random()*1000) %> %, 2 % ) 5 %% 16

&' <%@ page import="java.util.date,java.text.dateformat" %> <html> <body> <h1>exemplo Scriptlet<hr></h1> <P>Hoje é dia <%= DateFormat.getDateInstance().format(new Date ()) %> <P> Também temos uma versão <a href="servlet/hello">servelt</a> desta mesma página. <hr> </body> </html> Observe que não é utilizado ; para finalizar a expressão 17

" # $ ) ) % +,%) *'( # $ ) 8) "1 *' C8) 1 ( 18

(" #? $ 1 Escopo de aplicação application H)8) +)(% ) 9 %application% javax.servlet.servletcontext Escopo de solicitação (requisição) request Representa a solicitação do cliente. O objeto é uma instância de uma classe que implementa HttpServletRequest (pacote javax.servlet.http) Existem até o fim da solicitação 19

(" #? $ 1 Escopo de página config response page out javax.servlet.servletconfig representa as opções de configuração JSP que podem ser especificadas em web.xml Representa a resposta para o cliente. Normalmente é uma instância de javax.servlet.httpservletresponse Esse objeto java.lang.object representa a referência this à instância JSP atual Esse objeto javax.servlet.jsp.jspwriter escreve texto como parte da resposta a uma solicitação. É utilizado implicitamente com expressões JSP e ações que inserem conteúdo de um string em uma resposta 20

(" #? $ 1 Escopo de página (continuação) pagecontext Cada página tem suas próprias instâncias dos objetos implícitos de escopo de página javax.servlet.jsp.pagecontext fornece acesso aos objetos implícitos discutidos nessa tabela exception java.lang.throwable representa a exceção que é passada à página de erro de JSP. Disponível somente em uma página de erro JSP Escopo de sessão session Existem para toda a sessão de navegação do usuário javax.servlet.http.httpsession representa as informações de sessão de cliente se tal sessão foi criada. Esse objeto está disponível somente nas páginas que participam de uma sessão

<%@ page language="java" %> <html> <head><title>recebe dados de formulário</title></head> <body> Informações enviadas de:<%= request.getremotehost() %> <br> Login: <%= request.getparameter("login") %> <br> Senha: <%= request.getparameter("senha") %> </body> </html> As páginas JSP não fazem distinção em relação ao método de envio (GET ou POST! "#$ % &' % #(% ) 22

# %<%'% % IJ JK &%<%' % ) 5 % 5% +@A%(+ 23

' escolhacor.html <html> <head> <title>selecione uma Cor</title> </head> <body> <form name="form1" method="post" action="escolhecor.jsp"> <p> <strong>escolha um cor:</strong> <select name="cor"> <option value="green"> verde </option> <option value="blue > azul </option> <option value="red > vermelho </option> </select> </p> </form> </body> </html> 24

') * <%@ page language="java" %> <html> <head> <title>escolha de cores</title> <% String cor = request.getparameter("cor"); if(cor == null) { %> </head> <body bgcolor="#ffffff"> <% } else { %> <body bgcolor="<%= cor %>"> <% } /* fim do else */ %> </body> </html> escolhecor.jsp Scriptlets tem acesso as mesmas variáveis de pré-definidas que as expressões OBS: Colocar aqui um comentário de JSP (<%-- e --%>) ou (<!-- e -->) é um erro de sintaxe 25

(&) * " %12 @% % <%! %> A %) 5% 4 5% % 8) ( %)% " %12 ),+ 4%1%) %+ ) +$')4, <%! int contador = 0; %> 26

(&) * <%@ page language="java" %> <html><head><title>contador</title></head> <body bgcolor="#ffffff"> <%! int contador = 0; %> <b> Numero de acessos: <%= ++contador %> </b> </body> </html> Como são atributos podem ter modificadores de acesso Cada vez que for acessado o seu valor será incrementado Se este fragmento de código for alterado por: <% int contador = 0 %>. Quando recarregamos a página o contador não será mais incrementado, mantendo sempre o seu valor em 1. Isto ocorre pois todo código inserido em um scriplet é colocado no método service() da Servlet. 27

() * " %+ % %% ' %*'( 8) % % )%)1 ) + &54? L( $ 8)*' %+ ') (') ') <%@ diretiva (atributo = valor )* %> Indica zero ou mais atributo 28

() * %+ page) % ;*' include)) 8)+ *' taglib%%' ) % %) 29

(page 9% ) %+ ) 48) % )) % +* %+ page ) *' & 5 % + +* ) %%) %+ page IJ ' MN MN+ +O4 O4+ + ON MN MN N ' MN N NJK # ) 48)% % 4%8) ) +% 30

(page )+* info="página Exemplo" language="java" contenttype="text/html; charset=iso-8859-1" extends= MyHttpJspBase" import="java.io.*, java.net.*" session="true" buffer="8kb" autoflush="true" isthreadsafe="true" default: texto vazio default: java (default) default: nenhum default: java.lang,... (default) default (default) (default) errorpage="/erros/404.jsp" default: nenhum 31

(page ")language 0 %')' )% @ )+ A*'( %45+ <%@ page language = Java %> ")contenttype?%%6%d?d 0% ; 1%8)*'#%5+ text/html; charset=iso-8859-1 0, <%@ page contenttype = text/html;charset=gb2312 %> Envia usando caracter chines simplificado 32

(page ")extends 0 %8)*'( %)% + *%% >, ) +% ) " 1(% 8))extends %+ )% ) )%% %1>& 5 %% HttpJspBase 33

(page ")import -%8) % *'( ) #+% )5 java.lang.*, javax.servlet.*, javax.servlet.jsp.*, javax.servlet.http.* % +4 %) ) %+4 * +$') <%@ page import = java.net.*, java.io.* %> 34

!(% *% + package empresa; :!#:;:3-6<=:: public class Usuario { private String login; private String senha; private static int codigogeral; private int codigo; } public Usuario(String login, String senha) { this.login = login; this.senha = senha; } public String getlogin() { return login; } public String getsenha() { return senha; } public int getcodigo() { return codigo; } public void setlogin(string login) { this.login =login; } public void setsenha(string senha) { this.senha = senha;} 35

<%@ page language="java" %> <%@ page import = "empresa.*" %> <html> <head> <title>recebe dados</title></head> <body> Informações enviadas de:<%= request.getremotehost()%> Login: <%= request.getparameter("login") %> Senha: <%= request.getparameter("senha") %> <% Usuario usuario = new Usuario( request.getparameter("login"), request.getparameter("senha")); out.println("<br> Código do usuário" + usuario.getcodigo()); %> </body></html> importa todas as classe do pacote empresa Usando EL Login:{usuario.login} Senha:{usuario.senha} O código do usuário será mostrado na página. Cada vez que a página for recarregada um novo código será 36 gerado

(page ")session?% *'%) H)%*'%) 4 $session * $+ )18)*' #+% )5PtrueQ 8) )) % % <%@ page session = false %> 37

(page ")buffer 0 %))% +%*' H)%' %)4 4 8) 45+% #+% +%%RS3 0, A saída é imediatamente enviada ao cliente <%@ page buffer = none %> Altera o tamanho do buffer para 16Kb <%@ page buffer = 16Kb %> 38

(page ")autoflush 0 ) *% ) )( ')% true4+% +%4 )% $%%*'%+ +% 8) ) % false4*),1 %)) ) %*' * % <%@ page autoflush = false %> 39

(page ")isthreadsafe 0 *'% +* 8) 12 ) %%false4 ) 1%* %%%+4 ) 8) 12 %')%5 % 1 ') #+%5true <%@ page isthreadsafe = false %> O servlet gerado irá implementar a interface javax.servlet.singlethreadmodel 40

(page ")errorpage 0 ) *'+ 8) * % ))* '),1 % *' ")iserrorpage 0 *'5) *'% 8) * +%) L%,12 4 % exception 1% *'%) 3$ % 5 ' '*+ ) )* T '+ 8)+ %' 41

', testapaginaerro.jsp <%@ page language="java" errorpage="exemplopaginadeerro.jsp" %> <html> <head> <title>dados de Formulário</title> </head> <body bgcolor="#ffffff"> <% String login = request.getparameter("login"); int idade = Integer.parseInt( request.getparameter("idade")); %> Login: <%= login %> <br> Idade: <%= idade %> </body> </html> # ** >?,%-' ' %. 42

' <%@ page language="java" iserrorpage="true" %> <html> <head> <title>página de Erro</title> </head> <body bgcolor="#ffffff"> /(% +!0 true exception Ocorreu um erro no preenchimento do formulário<br> O problema detectado foi o seguinte: <P> <%= exception %> </body> </html> 1% -2 &-' 43

(include )$* "%+include )6%%)) ) +4 %%)1%( D ' )$% 6 +?%%8)%6%)% 8BL D ) 4E' "+ %=' ) ) )F file F 8) -CE%*' )$% <%@ include file = "banner.html" %> 44

()$* 0 5% ) % <%' 8)% ) ) *' ( <tr> <td> <%@ include file = "toc.html" %></td> <td> <%@ include file ="clock2.jsp"%></td> </tr> Confira o exemplo: includedirective.jsp 45

-&& G % ++% +* % ) % ) *'( # L %( 12 % 1 (% % <jsp:ação> </jsp:ação>4 %1 5 %1% > 8)% % )14% ),% +%UD E<jsp:ação /> 46

-<jsp:include> ).* <jsp:include> Inclui dinamicamente outro recurso em uma JSP Exemplo: <td><%-- inclui toc.html nesta página --%> <jsp:include page = "toc.html" flush = "true" /> </td> <td><%-- inclui clock2.jsp nesta página --%> <jsp:include page = "clock2.jsp" flush = "true" /> </td> Confira o exemplo: include.jsp A diferença entre a diretiva include e a ação <jsp:include> só é notável se o conteúdo incluído se alterar 47

-&<jsp:forward> <jsp:forward> <jsp:param> Encaminha o processamento da solicitação para outra Servlet/JSP ou página estática. Termina a execução da JSP atual Utilizada com as ações include, forward e plugin para especificar pares de informações de nome/valor adicionais a serem utilizados por essas ações 48

-&& 0,%17% -' %% + <jsp:forward page = "forward2.jsp"> <jsp:param name = "date" value = <%= new java.util.date() %>"/> </jsp:forward> 8 8 %0 -' (% (% -' -' forward2.jsp - - % (% *1 % 3 3 45 (% -'!6#78!6#78 %9-' <jsp:forward>: % % (% (% -' -' % 3 45 45 49

-&& <jsp:usebean> <jsp:setproperty> <jsp:getproperty> Especifica se a JSP utiliza uma instância JavaBean. A Ação especifica o escopo do bean e lhe atribui um ID que os componentes de script podem utilizar para manipulá-lo Configura uma propriedade especificada. Um recurso especial dessa ação é a correspondência automática de parâmetros da solicitação para as propriedades bean do mesmo nome Obtém uma propriedade na instância JavaBean especificada e converte o resultado em um string para sair na resposta 50

+ %)%% )1 +5 % %% 8)% )% %+ %1? + 5 )1%<%' Apresentação Implementação Código de Elementos de Javabeans formatação HTML geração de conteúdo dinâmico 51

0 ( 8)<%' %<'% ' 1 % *'(4 ) 1' 1 1 ( %%%1% 8) <'% 14%,%*'( + )1% %% ) )* 0 +3 52

0 )%% % %%%) % 4 % ) )%% % % G+ )1 )1% +* % ) 45%)1 )1 %% % 53

+ ') ') +12 % 1 4 % %% )*+ ( % 4 )% %% L348) )* %%% " %% ) 8)5 % %3 ) 54

1- *'(@3 A %% %) )*@ %- )3 A ) %- ) <html><head><title>cadastro de Usuario</title></head> <body> <form name="form1" method="post" action="recebebean.jsp"> Nome: <input name="login" type="text" id="login"> Senha: <input name="senha" type="text" id="senha"> <input type="submit" name="submit" value="enviar"> </form> </body> </html> 55

'(! $(%% % % %-' #$: package empresa; 9 ;8##$8 public class Usuario { +! +! private String login; 3-6<=1 private String senha; & & -' private static int codigogeral; private int codigo; public Usuario () {codigo = codigogeral++; } } public String getlogin() { return login; } public void setlogin(string login){this.login = login;} public String getsenha() { return senha; } public void setsenha(string senha){this.senha = senha;} public int getcodigo() { return codigo; } 56

'(!$ )/0* <%@ page language="java" %> <%@ page import="empresa.usuario" %> <html> <head> <title>recebe dados</title></head> <body> # <% % % Usuario usuario = new Usuario(); # %% usuario.setlogin(request.getparameter("login")); @ usuario.setsenha(request.getparameter("senha")); %> <BR> Login : <%= usuario.getlogin() %> <BR> Senha : <%= usuario.getsenha() %> <BR> Código: <%= usuario.getcodigo()%> </body> </html> A %% %!# 57

'(!$ )10* >V()1% '% %')' + Usuario ) 5% 6% + )1+ +' % +3 + % ), 58

'(!$ )10*2# " )1 Usuario usuario = new Usuario(); % <jsp:usebean id= usuario class= Usuario /> (8) 5 8)% % %) ) )'% ') <jsp:usebean id = usuario class = Usuario type = Object /> 59

'(!$ )10*2# A instrução: <jsp:usebean id= usuario" class= Usuario" scope="request" /> Corresponde a (em mais detalhes): <% Object obj = request.getattribute("usuario"); Usuario usuario = null; if (obj == null) { usuario = new Usuario(); request.setattribute( usuario", usuario); } else { usuario = (Usuario)obj; } %> 60

'(!$ )10*2# " )1 <%= usuario.getlogin() %> % <jsp:getproperty name= usuario property = login /> " )1 <%= usuario.setlogin(request.getparameter("login"))%> % <jsp:setproperty name = usuario property = login A ação getproperty produz, de fato, um resultado na página de resposta ao usuário não gera qualquer conteúdo na página, apenas altera o valor da propriedade do objeto Java value= <%= request.getparameter("login") %> /> 61

'(!$ )10* <%@ page language="java" %> <html> <head> <title>recebe Dados - Vesão 2</title> </head> <body> <jsp:usebean id="usuario" class ="empresa.usuario" /> <jsp:setproperty name="usuario" property="login" param = "login" /> <jsp:setproperty name="usuario" property="senha" param = "senha"/> Login : <jsp:getproperty name="usuario" property = "login" /> Senha : <jsp:getproperty name="usuario" property = "senha" /> </body> </html>.## % %&?8.?+ % % + >?@ %# 62

'(!$ )30* % / %, ') %% % % %)#% )12 <jsp:setproperty name="usuario" property="login" param = "login" /> <jsp:setproperty name="usuario" property="senha" param = "senha"/> % ) )$% <jsp:setproperty name = "usuario" property ="*" /> 0 )1)+ % % / 8) % 3 63

</jsp:usebean> id ="nomedoobjeto class ="pacote.nomedaclasse scope ="page session request application"> </jsp:usebean> #)P Q5 % %+%%+3 0 Page9+%)?%8)% %%8)8)%*' 8)8)%*'# 5 %%PageContext # ) %+% 558)*',% ) %) + *' 64

0 %8) "5 % % $+%%*' 8) %5%ServletRequest9 +*%8), ServletRequest4 %% )% 5% request.getattribute( nome ); 0 % "5 % % $+%%*'5 %%HttpSession4% % $+%% %) )* *'%) * '%) %%)1%*' 65

0 %1 # 5%%ServletContext4 %% % $+%%1.% 8)8)*'+ # ) %+% 5 %1. # % )% +5 % ') 5% application.getservletcontext().getattribute( nome ); 66