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

Documentos relacionados
JSP e JavaBeans. JSP e Java Beans. O desenvolvimento de sistemas com JSP apresenta como problema principal a mistura de código e XHTML.

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

J550 JSP com tags padrão

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

Unidade 6: Java Server Pages Prof. Daniel Caetano

JavaServer Pages (JSP) Leonardo Gresta Paulino Murta

Java II. Sérgio Luiz Ruivace Cerqueira

Desenvolvimento Web TCC Turma A-1

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

JSP (JAVASERVER PAGES)

Guia de Bolso HTML e XHTML

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

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

CSS [10] Desenvolvimento e Design de. Websites. Prof.: Ari Oliveira

TECNOLOGIAS WEB. Unidade 3 Linguagem de Marcação e Estilo. Luiz Leão

HTML 5 LINGUAGEM DE MARCAÇÃO E ESTILO - CSS - Prof. Rosemary Melo

Módulo IVb - JSP. Prof. Ismael H F Santos. Módulo IVb Java Server Pages - JSP

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

HTML BÁSICO E TEMPLATE VIEW. Gabrielle Amorim Porto

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS

Java para WEB com Struts 2 e Hibernate

Introdução ao HTML e às folhas de estilo (CSS)

TECNOLOGIA WEB INTRODUÇÃO CONSTRUÇÃO DE PÁGINAS ESTÁTICAS HTML / XHTML

Managed Beans e Tags JSF

Java na WEB Componentes Bean

AULA 02 Introdução (HTML, CSS e Javascript) PROGRAMAÇÃO PARA WEB Marcelo Henrique dos Santos

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 5 PROF. EMILIO PARMEGIANI

COM222 DESENVOLVIMENTO DE SISTEMAS WEB. Aula 01: HTML e CSS

PROJETO WEB: Java. Prof Fernando Gomes

Aplicativos para Internet Aula 01

Introdução à linguagem HTML. Volnys Borges Bernal

Tutorial 1 Configuração Apache Tomcat no NetBeans 8.0 (passo a passo)

Introdução a HTTP, HTML e CSS

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV1-01. Luiz Leão

Desenvolvimento de aplicações Web. Java Server Pages

Desenvolvimento Web. Professor: Bruno E. G. Gomes

SERVLETS. Introdução UNIDADED

PROGRAMAÇÃO EM AMBIENTE WEB I

Volnys Bernal. Introdução à linguagem HTML. Introdução à linguagem HTML. Visão geral. Visão geral. Visão geral. Visão geral.

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE I

Desenvolvimento Web. HTML 5 Parte I. Prof. Vicente Paulo de Camargo

CSS Exercício JCC. Comunicações Digitais e Internet, 2006/07 Jornalismo e Ciências da Comunicação, U.Porto. Sumário

Java Server Faces Navegação de

Treinamento em CSS. Índice

OS BASTIDORES DA INTERNET NO BRASIL

08/08/2011 TECNOLOGIAS WEB AULA 10 PROF. RAFAEL DIAS Objetivos: Revisar os princípios de CSS Blocos e Elementos Alinhados com CSS

Java TM Applets. Java Deployment Course: Aula 3. por Jorge H. C. Fernandes DI-UFPE 30 de Abril de 1999

Dezembro/2012. Universidade Federal Fluminense. Curso de Introdução ao HTML. SeTel- Grupo PET-Tele. Adicionando links e imagens. Tabelas.

Web Design Aula 16: Modelo de Caixa e propriedades de Imagem

Laboratório de Sistemas e Serviços Web

2 Criar uma Enterprise Application que num módulo EJB irá conter um ou vários Beans.

Desenvolvimento Web CSS Conceitos básicos parte II

Redes de Computadores I Seminário Novas Tecnologias em Redes HTML5. Jessica da Silva Hahn Letícia Aparecida Coelho

JAVA PARA WEB E EJB APLICAÇÕES WEB, SERVIDORES DE APLICAÇÃO, CONTAINERS WEB

Java para Desenvolvimento Web

Programação Web Aula 2 XHTML/CSS/XML

Java Server Pages (JSP)

Desenvolvimento de Aplicações Web. Prof. José Eduardo A. de O. Teixeira / j.edu@vqv.com.br

Engenharia de Aplicações Sistemas Interactivos 2009/10! JAVASERVER FACES 1.2. Mestrado em Informática Universidade do Minho! 31!

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

Desenvolvimento Web. CSS Conceitos básicos parte I. Professor: Bruno Gomes

Desenvolvimento Web. XHTML tag head e tags de texto. Professor: Bruno Gomes

PDI 1 - Projeto e Design de Interfaces Web

DESENVOLVENDO APLICAÇÕES WEB COM JSP E JSTL. Peter Jandl Junior. Novatec

Escrito por Lisiane Batista Neitzke Sex, 14 de Outubro de :57 - Última atualização Qua, 25 de Junho de :18

Conhecendo um pouco mais o servidor Apache TomCat

Desenvolvimento Web. JavaScript aula II variáveis (cont.) e diálogos. Professor: Bruno Gomes

Desenvolvimento de Sistemas Corporativos Aula 1.5 Introdução a Servlets. Prof. Bruno Moreno

Regras de Navegação e Templates

HTML? HTML? HTML? HTML e HTTP. HTML e HTTP 26/02/2011

06/02/2016 PROGRAMAÇÃO EM AMBIENTE WEB I CSS UM POUCO DE HISTÓRIA

Teste de avaliação de frequência Parte Prática

O que é uma tag Tag tag tag tag tag tags tags HTML O que é uma tag library biblioteca de tags tags Java Standard Tag Library JSTL Tag Library JSTL

HTML, CSS e JavaScript

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET. quarta-feira, 17 de outubro de 12

Adicionando mais tags HTML

#Fundamentos de uma página web

Os slides que seguem mostram os principais comandos da linguagem HTML. Conhecer o código HTML possibilita a criação de páginas leves que contenham ape

Java para Web & EJB. Teoria, prática e questões Módulo Introdução e Servlets

ZK Framework. Utilizando Ajax sem Javascript

DESENVOLVIMENTO DE SISTEMAS WEB UNIDADE I Criação de Aplicativos Web. Luiz Leão

Por Fernando Koyanagi

Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual

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

Web Services REST JAX-RS

08/11/2012. Tecnologias WEB - CSS. Professor Elisson Lobão

(UFF) JSF (I) TEPIS II

F E B A C. Exercício de Fixação 3. FACULDADE DE EDUCAÇÃO DE BACABAL FEBAC Credenciamento MEC/Portaria: 472/07 Resolução: 80/07

17/01/2016 PROGRAMAÇÃO EM AMBIENTE WEB I UM POUCO DE HISTÓRIA WWW. Tudo começou com a ARPANET; 1977 ARPANET nasce

Sintaxe Básica da Linguagem CSS

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

Estudo Dirigido - Parte 1

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

CSS (Cascading Style Sheet)

JSP (Java Server Pages)

Transcrição:

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

Agenda 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 2 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Incluem conteúdo de outros recursos Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Incluem conteúdo de outros recursos Encaminham requisições para outros recursos Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Incluem conteúdo de outros recursos Encaminham requisições para outros recursos Interagem com JavaBeans Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Incluem conteúdo de outros recursos Encaminham requisições para outros recursos Interagem com JavaBeans Contêiners JSP processam ações em tempo de requisição Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Ações Padrão Provém acesso a tarefas comuns executadas em uma JSP Incluem conteúdo de outros recursos Encaminham requisições para outros recursos Interagem com JavaBeans Contêiners JSP processam ações em tempo de requisição Delimitadas por <jsp:action> e </jsp:action> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 3 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 4 / 50

Ações Padrão - JSPAction (1/2) <jsp:include> : dinamicamente inclui outro recurso em uma JSP. Quando a JSP é executada, o recurso referenciado é incluído e processado Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 5 / 50

Ações Padrão - JSPAction (1/2) <jsp:include> : dinamicamente inclui outro recurso em uma JSP. Quando a JSP é executada, o recurso referenciado é incluído e processado <jsp:forward> : encaminha o processamento da requisição para outra JSP, servlet ou página estática. Esta ação encerra a execução da JSP atual Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 5 / 50

Ações Padrão - JSPAction (2/2) <jsp:plugin> : permite que um componente plug-in possa ser acrescentado à página na forma de um objeto específico do navegador ou de um elemento HTML. No caso de um applet Java, esta ação habilita a descarga e instalação de um plug-in Java, se ele já não estiver instalado no computador Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 6 / 50

Ações Padrão - JSPAction (2/2) <jsp:plugin> : permite que um componente plug-in possa ser acrescentado à página na forma de um objeto específico do navegador ou de um elemento HTML. No caso de um applet Java, esta ação habilita a descarga e instalação de um plug-in Java, se ele já não estiver instalado no computador <jsp:param> : usada com as ações include, forward e plugin para especificar pares de informação nome/valor adicionais a serem usados por estas ações Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 6 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 7 / 50

Ações Padrão - Manipulação de JavaBean <jsp:usebean> : especifica que a JSP usa uma instância de JavaBean. Esta ação especifica o escopo do bean e associa a ele um ID que os componentes de scripting podem usar para manipulá-lo Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 8 / 50

Ações Padrão - Manipulação de JavaBean <jsp:usebean> : especifica que a JSP usa uma instância de JavaBean. Esta ação especifica o escopo do bean e associa a ele um ID que os componentes de scripting podem usar para manipulá-lo <jsp:setproperty> : define uma propriedade na instância do JavaBean especificado Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 8 / 50

Ações Padrão - Manipulação de JavaBean <jsp:usebean> : especifica que a JSP usa uma instância de JavaBean. Esta ação especifica o escopo do bean e associa a ele um ID que os componentes de scripting podem usar para manipulá-lo <jsp:setproperty> : define uma propriedade na instância do JavaBean especificado <jsp:getproperty> : obtém uma propriedade da instância especificada de JavaBean e converte o resultado para uma string que conterá a resposta Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 8 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 9 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Mais flexível que a diretiva include - permite a inclusão de conteúdo tanto dinâmico como estático: Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Mais flexível que a diretiva include - permite a inclusão de conteúdo tanto dinâmico como estático: Requer mais sobrecarga quando o conteúdo da página muda freqüentemente Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Mais flexível que a diretiva include - permite a inclusão de conteúdo tanto dinâmico como estático: Requer mais sobrecarga quando o conteúdo da página muda freqüentemente Atributos Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Mais flexível que a diretiva include - permite a inclusão de conteúdo tanto dinâmico como estático: Requer mais sobrecarga quando o conteúdo da página muda freqüentemente Atributos page : especifica o URI relativo do caminho do recurso a ser incluído. O recurso deve ser parte da mesma aplicação web. Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

Ação <jsp:include> Habilita que conteúdo seja incluído em uma JSP dinamicamente Mais flexível que a diretiva include - permite a inclusão de conteúdo tanto dinâmico como estático: Requer mais sobrecarga quando o conteúdo da página muda freqüentemente Atributos page : especifica o URI relativo do caminho do recurso a ser incluído. O recurso deve ser parte da mesma aplicação web. flush : especifica se o buffer deveria ser esvaziado (flushed) depois do include ser executado. No JSP 1.1, estre atributo deve ser true Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 10 / 50

ação include X diretiva include diretiva: arquivos são incluidos em tempo de compilação Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 11 / 50

ação include X diretiva include diretiva: arquivos são incluidos em tempo de compilação ação: pode-se incluir uma página ou pedaço de documento em outra página Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 11 / 50

ação include X diretiva include diretiva: arquivos são incluidos em tempo de compilação ação: pode-se incluir uma página ou pedaço de documento em outra página É executada em tempo de requisição: permite a inclusão de conteúdo tanto estático quanto dinâmico Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 11 / 50

ação include X diretiva include diretiva: arquivos são incluidos em tempo de compilação ação: pode-se incluir uma página ou pedaço de documento em outra página É executada em tempo de requisição: permite a inclusão de conteúdo tanto estático quanto dinâmico Não inclui o conteúdo atual do recurso - inclui qualquer saída gerada pelo recurso incluído diretamente para o JspWriter apontando para a variável implícia out pode-se especificar qualquer tipo de recurso web, contanto que ele produza um conteúdo do mesmo tipo que o requrido pela página JSP Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 11 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 12 / 50

: banner.html <! Fig. 25.7: banner. html > <! banner para i n c l u i r outro documento > < d i v s t y l e = "width: 580px"> <p> Java (TM), C, C++, Visual Basic (R), Object Technology, and <br / > I n t e r n e t and World Wide Web Programming Training&nbsp ; <br / > On S i t e Seminars Delivered Worldwide < / p> <p> <a href = "mailto:deitel@deitel.com">deitel@ deitel.com< / a> <br / >978.461.5880<br / >12 Clock Tower Place, Suite 200, Maynard, MA 01754 < / p> < / d i v > Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 13 / 50

: toc.html (1/2) <! Fig. 25.8: toc. html > <! conteúdo para i n c l u i r em outro documento > <p><a h r e f = "http://www.deitel.com/books/index.html"> Publications / BookStore < / a>< / p> <p><a h r e f = "http://www.deitel.com/whatsnew.html"> What s New < / a>< / p> <p><a h r e f = "http://www.deitel.com/books/downloads.html"> Downloads / Resources < / a>< / p> <p><a h r e f = "http://www.deitel.com/faq/index.html"> FAQ ( Frequently Asked Questions ) < / a>< / p> <p><a h r e f = "http://www.deitel.com/intro.html"> Who we are < / a>< / p> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 14 / 50

: toc.html (2/2) <p><a h r e f = "http://www.deitel.com/index.html"> Home Page < / a>< / p> <p>send questions or comments about t h i s s i t e to <a h r e f = "mailto:deitel@deitel.com"> deitel@ deitel.com < / a><br / > Copyright 1995 2003 by D e i t e l & Associates, Inc. A l l Rights Reserved. < / p> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 15 / 50

: clock2.jsp (1/2) <! Fig. 25.9: clock2. jsp > <! date and time to include in another document > < t a b l e > < t r > < td s t y l e = "background-color: black;"> <p class = "big" s t y l e = "color: cyan; font-size: 3em; font-weight: bold;"> <% s c r i p t to determine c l i e n t l o c a l and %> <% format date a c c o r d i n g l y %> <% / / get c l i e n t l o c a l e java. u t i l. Locale l o c a l e = request. getlocale ( ) ; / / get DateFormat f o r c l i e n t s Locale java. t e x t. DateFormat dateformat = java. text. DateFormat. getdatetimeinstance ( java. text. DateFormat.LONG, java. text. DateFormat.LONG, locale ) ; %> <% end s c r i p t %> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 16 / 50

: clock2.jsp (2/2) <% output date %> <%= dateformat. format ( new java. u t i l. Date ( ) ) %> < / p> < / td> < / t r > < / t a b l e > Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 17 / 50

: include.jsp (1/3) <?xml version = "1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <! Fig. 25.10: include. jsp > <html xmlns = "http://www.w3.org/1999/xhtml"> <head> < t i t l e >Using j s p : i n c l u d e < / t i t l e > < s t y l e type = "text/css"> body { font family : tahoma, helvetica, arial, sans s e r i f ; } table, tr, td { font size :.9em; border : 3px groove ; padding : 5px ; background color : #dddddd ; } < / s t y l e > < / head> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 18 / 50

: include.jsp (2/3) <body> < t a b l e > < t r > < td s t y l e = "width: 160px; text-align: center"> <img src = "images/logotiny.png" width = "140" height = "93" a l t = "Deitel & Associates, Inc. Logo" / > < / td> < td> < / td> < / t r > <% include banner. html in t h i s JSP %> <jsp : include page = "banner.html" f l u s h = "true" / > < t r > < td s t y l e = "width: 160px"> <% include toc. html in t h i s JSP %> <jsp : include page = "toc.html" f l u s h = "true" / > < / td> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 19 / 50

: include.jsp (3/3) < / td> < / t r > < / t a b l e > < / body> < / html> < td s t y l e = "vertical-align: top"> <% include clock2. jsp in t h i s JSP %> <jsp : include page = "clock2.jsp" f l u s h = "true" / > Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 20 / 50

Usando JSP include Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 21 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 22 / 50

Ação <jsp:forward> Habilita JSP a encaminhar requisições a diferentes recursos Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 23 / 50

Ação <jsp:forward> Habilita JSP a encaminhar requisições a diferentes recursos Pode encaminhar requisições somente a recursos no mesmo contexto Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 23 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 24 / 50

Ação <jsp:param> Especifica pares nome/valor de informação Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 25 / 50

Ação <jsp:param> Especifica pares nome/valor de informação Pares Nome/Valor são passados a outras ações Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 25 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 26 / 50

: forward1.jsp (1/2) <?xml version = "1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <! Fig. 25.11: forward1. js p > <html xmlns = "http://www.w3.org/1999/xhtml"> <head> < t i t l e >Encaminha r e q u i s i ç õ e s para outra JSP< / t i t l e > < / head> <body> <% / / i n í c i o do s c r i p t l e t String name = request. getparameter ( "nome" ) ; i f ( name!= n u l l ) { %> <% fim do s c r i p t l e t para i n s e r i r dados de molde f i x o %> <jsp : forward page = "forward2.jsp"> <jsp : param name = "date" value = "<%= new java.util.date() %>" / > < / j s p : forward> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 27 / 50

: forward1.jsp (2/2) <% / / continua o s c r i p t l e t } / / end i f else { %> <% fim do s c r i p t l e t para i n s e r i r dados de molde f i x o %> <form a c t i o n = "forward1.jsp" method = "get"> <p> D i g i t e o seu nome e pressione Pronto< / p> <p>< i n p u t type = "text" name = "nome" / > < i n p u t type = "submit" value = "Pronto" / > < / p> < / form> <% / / continua o s c r i p t l e t } / / fim do else %> <% fim do s c r i p t l e t %> < / body> < / html> <! fim do documento XHTML > Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 28 / 50

Usando JSP include Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 29 / 50

: forward2.jsp (1/2) <?xml version = "1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <! forward2. j sp > <html xmlns = "http://www.w3.org/1999/xhtml"v <head> < t i t l e >Processando uma r e q u i s i ç ã o encaminhada< / t i t l e > < s t y l e type = "text/css">. big { font family : tahoma, helvetica, arial, sans s e r i f ; font weight : bold ; font size : 2em; } < / s t y l e > < / head> <body> <p class = "big"> Boa noite <%= request. getparameter ( "nome" ) %>, <br / > Sua requisição f o i recebida <br / > e encaminhada às < / p> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 30 / 50

: forward2.jsp (2/2) < t a b l e s t y l e = "border: 6px outset;"> < t r > < td s t y l e = "background-color: black;"> <p class = "big" s t y l e = "color: cyan;"> <%= request. getparameter ( "date" ) %> < / p> < / td> < / t r > < / t a b l e > < / body> < / html> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 31 / 50

Usando JSP include Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 32 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 33 / 50

Ação <jsp:usebean> Habilita JSP a manipular objetos Java Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 34 / 50

Ação <jsp:usebean> Habilita JSP a manipular objetos Java Cria objetos Java ou localiza um objeto existente para usar em JSP Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 34 / 50

<jsp:usebean> - atributos (1/5) id : nome usado para manipular objetos Java com ações <jsp:setproperty> e <jsp:getproperty>. Uma variável com este nome é também declarada para ser usada com elementos de scripting. Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 35 / 50

<jsp:usebean> - atributos (1/5) id : nome usado para manipular objetos Java com ações <jsp:setproperty> e <jsp:getproperty>. Uma variável com este nome é também declarada para ser usada com elementos de scripting. scope : escopo em que o objeto Java é acessível - page, request, session, application. O valor padrão é page Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 35 / 50

<jsp:usebean> - atributos (1/5) id : nome usado para manipular objetos Java com ações <jsp:setproperty> e <jsp:getproperty>. Uma variável com este nome é também declarada para ser usada com elementos de scripting. scope : escopo em que o objeto Java é acessível - page, request, session, application. O valor padrão é page class : nome da classe (completo) do objeto Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 35 / 50

<jsp:usebean> - atributos (2/5) beanname : nome do bean que será usado com o método instantiate da classe java.beans.beans para carregar o JavaBean para a memória Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 36 / 50

<jsp:usebean> - atributos (2/5) beanname : nome do bean que será usado com o método instantiate da classe java.beans.beans para carregar o JavaBean para a memória type : tipo do JavaBean. Pode ser o mesmo tipo do atributo class, uma superclasse deste tipo ou uma interface implementada por este tipo. O valor padrão é o mesmo para o atributo class. Uma ClassCastException ocorre se o objeto Java não é do tipo especificado com o atributo type Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 36 / 50

<jsp:usebean> - atributos (3/5) name : ID do JavaBean para o qual a propriedade (ou propriedades) possa ser associada Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 37 / 50

<jsp:usebean> - atributos (3/5) name : ID do JavaBean para o qual a propriedade (ou propriedades) possa ser associada property : nome da propriedade. Especificando-se o valor * para este atributo faz com que o JSP associe os parâmetros da requisição com as propriedades do bean. Para cada parâmetro associado (por ex., o nome do parâmetro da requisição é idêntico à propriedade name do bean), a propriedade correspondente do bean é associada ao valor do parâmetro. Se o valor do parâmetro da requisição é " ", o valor da propriedade do bean não se altera Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 37 / 50

<jsp:usebean> - atributos (4/5) param : se os nomes dos parâmetros da requisição não se casam com os nomes das propriedades do bean, este atributo pode ser usado para especificar qual parâmetro da requisição deveria ser usado para obter o valor para uma propriedade específica do bean. Este atributo é opcional. Se for omitido, os nomes do parâmetros da requisição devem se casar com os nomes das propriedades do bean Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 38 / 50

<jsp:usebean> - atributos (5/5) value : valor associado a uma propriedade do bean. O valor é, tipicamente, o resultado de uma expressão JSP. Este atributo é particularmente útil para especificar propriedades do bean que não podem ser definidas usando-se parâmetros da requisição. Este atributo é opcional. Se for omitido, a propriedade JavaBean deve ser de um tipo que possa ser definida usando-se parãmetros da requisição Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 39 / 50

Servlets/JSP/JSF 1 Ações Padrão JSPAction Manipulação de JavaBean jsp:include jsp:forward jsp:param jsp:usebean 2 Atividades Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 40 / 50

Construa a estrutura para a aplicação TomCat Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

Construa a estrutura para a aplicação TomCat Crie o arquivo web.xml e o coloque na pasta WEB-INF Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

Construa a estrutura para a aplicação TomCat Crie o arquivo web.xml e o coloque na pasta WEB-INF Coloque as classes Java no diretório WEB-INF\classes Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

Construa a estrutura para a aplicação TomCat Crie o arquivo web.xml e o coloque na pasta WEB-INF Coloque as classes Java no diretório WEB-INF\classes Coloque o diretório images na pasta raiz da apllicação Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

Construa a estrutura para a aplicação TomCat Crie o arquivo web.xml e o coloque na pasta WEB-INF Coloque as classes Java no diretório WEB-INF\classes Coloque o diretório images na pasta raiz da apllicação Crie a aplicação através do TomCat Server Administration Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

Construa a estrutura para a aplicação TomCat Crie o arquivo web.xml e o coloque na pasta WEB-INF Coloque as classes Java no diretório WEB-INF\classes Coloque o diretório images na pasta raiz da apllicação Crie a aplicação através do TomCat Server Administration Digine http://localhost:8080 no navegador Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 41 / 50

: Rotator.java (1/2) / / Fig. 25.14: Rotator. java / / A JavaBean t h a t r o t a t e s advertisements. package com. d e i t e l. j h t p 5. j s p ; p u b l i c class Rotator { p r i v a t e S t r i n g images [ ] = { "images/advjhtp1.jpg", "images/cpphtp4.jpg", "images/iw3htp2.jpg", "images/jwsfep1.jpg", "images/vbnethtp2.jpg" } ; private String links [ ] = { "http://www.amazon.com/exec/obidos/asin/0130895601/" + "deitelassociatin", "http://www.amazon.com/exec/obidos/asin/0130384747/" + "deitelassociatin", "http://www.amazon.com/exec/obidos/asin/0130308978/" + "deitelassociatin", "http://www.amazon.com/exec/obidos/asin/0130461342/" + "deitelassociatin", "http://www.amazon.com/exec/obidos/asin/0130293636/" + "deitelassociatin" } ; private i n t selectedindex = 0; Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 42 / 50

: Rotator.java (2/2) / / returns image f i l e name for current ad p u b l i c S t r i n g getimage ( ) { return images [ selectedindex ] ; } / / returns the URL for ad s corresponding Web s i t e public String getlink ( ) { return l i n k s [ selectedindex ] ; } } / / update selectedindex so next c a l l s to getimage and / / getlink r e t u r n a d i f f e r e n t advertisement p u b l i c void nextad ( ) { selectedindex = ( selectedindex + 1 ) % images. length ; } Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 43 / 50

: adrotator.jsp (1/2) <?xml version = "1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <! Fig. 10.18: a d r o t a t o r. jsp > <jsp : usebean id = "rotator" scope = "application" class = "com.deitel.jhtp5.jsp.rotator" / > <html xmlns = "http://www.w3.org/1999/xhtml"> <head> < t i t l e > AdRotator< / t i t l e > < s t y l e type = "text/css">. big { font f a m i l y : h e l v e t i c a, a r i a l, sans s e r i f ; font weight : bold ; font size : 2em } < / s t y l e > <% atualiza o anúncio %> <% r o t a t o r. nextad ( ) ; %> < / head> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 44 / 50

: adrotator.jsp (2/2) <body> <p class = "big"> AdRotator< / p> <p> <a h r e f = "<jsp:getproperty name = " r o t a t o r " property = " l i n k " />"> <img src = "<jsp:getproperty name = " r o t a t o r " property = "image" />" a l t = "advertisement" / > < / a> < / p> < / body> < / html> Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 45 / 50

adrotator Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 46 / 50

adrotator Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 47 / 50

adrotator Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 48 / 50

Atividade 1 Construir uma página JSP que, em função de uma escolha do usuário, lhe apresente portais de serviços. Por exemplo, se o usuário deseja comprar um livro, devem ser exibidas páginas de livrarias. Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 49 / 50

Atividade 2 Construir um portal de comércio eletrônico, utilizando a tecnologia JSP com, no mínimo os seguintes requisitos: Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 50 / 50

Atividade 2 Construir um portal de comércio eletrônico, utilizando a tecnologia JSP com, no mínimo os seguintes requisitos: A página principal do portal deve ser formada por, no mínimo, três outras páginas HTML - usar a ação jsp:include Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 50 / 50

Atividade 2 Construir um portal de comércio eletrônico, utilizando a tecnologia JSP com, no mínimo os seguintes requisitos: A página principal do portal deve ser formada por, no mínimo, três outras páginas HTML - usar a ação jsp:include Os pedidos do cliente devem ser capturados em uma das sessões da página principal e encaminhados para serem processados em outra - usar as ações jsp:forward e jsp:param Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 50 / 50

Atividade 2 Construir um portal de comércio eletrônico, utilizando a tecnologia JSP com, no mínimo os seguintes requisitos: A página principal do portal deve ser formada por, no mínimo, três outras páginas HTML - usar a ação jsp:include Os pedidos do cliente devem ser capturados em uma das sessões da página principal e encaminhados para serem processados em outra - usar as ações jsp:forward e jsp:param Para fazer um pedido, o cliente deve se cadastrar, e ter seus dados armazenados em um arquivo. O Cadastro também deve ser processado em uma página específica - usar também as ações jsp:forward e jsp:param Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 50 / 50

Atividade 2 Construir um portal de comércio eletrônico, utilizando a tecnologia JSP com, no mínimo os seguintes requisitos: A página principal do portal deve ser formada por, no mínimo, três outras páginas HTML - usar a ação jsp:include Os pedidos do cliente devem ser capturados em uma das sessões da página principal e encaminhados para serem processados em outra - usar as ações jsp:forward e jsp:param Para fazer um pedido, o cliente deve se cadastrar, e ter seus dados armazenados em um arquivo. O Cadastro também deve ser processado em uma página específica - usar também as ações jsp:forward e jsp:param Os dados do cliente devem ser todos validados por um programa java - usar o ação jsp:usebean Prof. Cedric Luiz de Carvalho (INF/UFG) Servlets/JSP/JSF Abril de 2010 50 / 50