aula 12 - jstl

57
Prof. André Luis Schwerz [email protected] [email protected] AULA 12 AULA 12 JSTL JSTL

Upload: antoniocezars

Post on 21-Oct-2015

28 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Aula 12 - JSTL

Prof. André Luis [email protected]

[email protected]

AULA 12AULA 12

JSTLJSTL

Page 2: Aula 12 - JSTL

Objetivos da AulaObjetivos da AulaObjetivos da Aula

• Aprenderemos:

Page 3: Aula 12 - JSTL

MotivaMotivaMotivaçççãoãoão

• Falta de padrão no desenvolvimento JSP– Scriptlets espalhados em vários páginas

– Código confuso = manutenção +trabalhosa

– Regras de negócio não deveriam ser tratadas dentro do JSP (foge ao padrão MVC)

– JSP deve ser usado somente para a camada de visualização (viewer), somente exibindo o conteúdo dos objetos e nada de scriptlets.

• Tag Libs– Biblioteca de Tags

– Estende a semântica das páginas jsp

– Tags personalizadas

– Facilita o entendimento de páginas jsp

Page 4: Aula 12 - JSTL

JSTL JSTL JSTL --- JSP Standard JSP Standard JSP Standard TagTagTag LibraryLibraryLibrary

• Conjunto de marcações (tags) que encapsulam funcionalidades comuns a muitas aplicações JSP:

– Linguagem de Expressão

– Simplifica o processo de criação de páginas

– Redução ou supressão do uso de scriptlets• Melhoria na legibilidade;

Page 5: Aula 12 - JSTL

Estrutura da JSTLEstrutura da JSTLEstrutura da JSTL

• Divisão em cinco taglibs:– Core: saída, repetição, decisão e seleção

• http://java.sun.com/jsp/jstl/core

– Database: acesso a BD• http://java.sun.com/jsp/jstl/sql

– Formatting e I18N: formatação e internacionalização• http://java.sun.com/jsp/jstl/fmt

– XML Processing: processamento de documentos XML• http://java.sun.com/jsp/jstl/xml

– Funções Diversas• http://java.sun.com/jsp/jstl/functions

Page 6: Aula 12 - JSTL

Inclusão de Inclusão de Inclusão de TaglibsTaglibsTaglibs

• Formato:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %><%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="xml" %><%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %><%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

Page 7: Aula 12 - JSTL

TagsTagsTags JSTLJSTLJSTL

PrefixoSub-FunçãoÁrea

Manipulação de Stringsfn

Tamanho de ColeçõesFunções

sqlSQLBanco de Dados

Formatação de Datas e Números

Formatação de Mensagem fmt

Local

Internacionalização

Transformação

Controle de Fluxo xCore

XML

Gerenciamento de URL

Controle de Fluxo cSuporte a Variáveis

Core

Page 8: Aula 12 - JSTL

Biblioteca JSTL

CORE

Page 9: Aula 12 - JSTL

TagTagTag outoutout

• Definição:– Imprime o valor de uma expressão.

• Atributos:

• Corpo da tag:– Atributo default

Determina se os caracteres <,>,&,'," na string resultante devem ser convertido para código. Valor padrão é true.

FalseescapeXml

Valor padrão se o valor resultante é null.Falsedefault

value

Nome

Expressão avaliada.True

DescriçãoObrigatório

Page 10: Aula 12 - JSTL

Exemplos Exemplos Exemplos outoutout

<c:out value="${umaExpressao}"/><c:out value="Texto${umaExpressao}${outraExpressao}"/>

<c:out value="Texto"/>

<c:out value="${pessoa.nome}" />

<c:out escapeXml="true" value="<html>" />

<c:out value="${a}" default="nulo" />

<c:out value="${a}"> Nulo</c:out>

Page 11: Aula 12 - JSTL

TagTagTag ififif

• Definição:– Executa o corpo da tag apenas se a expressão de teste for

verdadeira.

• Atributos:

• Corpo da tag:– Bloco a ser executado se a expressão teste for verdadeira.

Escopo de var.FalseScope

Nome da variável de escopo exportada para o valor resultante do teste de condicional. O tipo da variável de escopo é Boolean.

Falsevar

test

Nome

Indica a condição a ser avaliada.True

DescriçãoObrigatório

Page 12: Aula 12 - JSTL

Exemplo Exemplo Exemplo ififif

<c:if test=“${usuario.nome == 'Felipe' || usuario.nome == 'Michael'}”>Permissão ok!<br></c:if>

<c:if test=”${usuario.nome == 'Felipe'}” var=”acesso”>Permissão ok!<br></c:if>

Acesso: <c:out value=”${acesso}”/>

Page 13: Aula 12 - JSTL

TagTagTag choosechoosechoose

• Definição:– Tag condicional que estabelece um contexto para operações

condicionais mutuamente exclusivas, definidas por <when> e <otherwise>.

• Atributos:– Não há atributos.

• Corpo da Tag:– Tags <when> (1 ou +) e <otherwise> (0-1)

Page 14: Aula 12 - JSTL

TagTagTag whenwhenwhen

• Definição:– Inclui o que for definido em seu corpo se sua condição for avaliada

como verdadeira.

• Atributos:

• Corpo da Tag:– Bloco a ser executado quando condição teste for verdadeira

test

Nome

Testa a condição indicando se o corpo será ou não incluido.True

DescriçãoObrigatório

Page 15: Aula 12 - JSTL

TagTagTag otherwiseotherwiseotherwise

• Definição:– Subtag da tag <choose> que acompanha as tags <when> e executa

somente se todas as condições anteriores forem avaliadas como “false”.

• Atributos:– Não há atributos.

• Corpo da Tag:– Bloco a ser executado quando condição teste for verdadeira.

Page 16: Aula 12 - JSTL

ExemploExemploExemplo

<c:choose>

<c:when test=”${usuario.nome == 'Felipe'}”>Permissão ok!<br/>

</c:when>

<c:when test=”${usuario.nome == 'Michael'}”>Permissão ok!<br/>

</c:when>

<c:otherwise>

Permissão negada!<br/></c:otherwise>

</c:choose>

Page 17: Aula 12 - JSTL

ExemploExemploExemplo

<c:choose>

<c:when test="${nota lt 30}">Reprovado

</c:when>

<c:when test="${nota lt 70}">Recuperação

</c:when>

<c:otherwise>

Aprovado</c:othewise>

</c:choose>

Page 18: Aula 12 - JSTL

TagTagTag forEachforEachforEach

• Definição:– Tag de interação. Aceita diferentes tipos de coleções.

• Atributos:

• Corpo da Tag:– Bloco a ser executado em cada iteração.

Variável que recebe o status de cada iteração.FalsevarStatus

Variável que recebe o valor de cada iteração.Falsevar

Frequencia das iterações.Falsestep

Índice do último passo da iteração.Falseend

Índice do primeiro passo da iteração.Falsebegin

items

Nome

Coleção a ser iterada.False

DescriçãoObrigatório

Page 19: Aula 12 - JSTL

Exemplo Exemplo Exemplo forEachforEachforEach

<table border="1" cellspacing="0" cellpadding="0"><c:forEach items="${listaPessoa}" var="pessoa" varStatus="status">

<tr>

<td><c:out value="${status.count}" /></td>

<td><c:out value="${parametro.nome}" /></td>

<td><c:out value="${parametro.sobrenome}" /></td>

</tr>

</c:forEach>

</table>

<ul>

<c:forEach var="i" begin="1" end="10"><li><c:out value="${i}"/> </li>

</c:forEach>

</ul>

Page 20: Aula 12 - JSTL

TagTagTag forTokensforTokensforTokens

• Definição:– Iteração sobre os tokens de uma string.

• Atributos:

• Corpo da Tag:– Bloco a ser executado em cada iteração.

Variável que recebe o status de cada iteração.FalsevarStatus

Variável que recebe o valor de cada iteração.Falsevar

Frequencia das iterações.Falsestep

Índice do último passo para iteração.Falseend

Índice do primeiro passo para iteração.Falsebegin

Delimitadores dos tokens.Falsedelims

items

Nome

String com os tokens.True

DescriçãoObrigatório

Page 21: Aula 12 - JSTL

Exemplo Exemplo Exemplo forTokensforTokensforTokens

<table>

<c:forTokens items="a,b;c,d,e,f;g;h" delims=",;" var="token" varStatus="status">

<tr>

<td><c:out value="${status.count}"/></td><td><c:out value="${token}"/></td>

</tr>

</c:forTokens>

</table>

Page 22: Aula 12 - JSTL

ResumoResumoResumo

Iteração sobre tokens, separados pelos delimitadores fornecidos.

forTokens

Tag de iteração básica, aceita uma grande quantidade de tipos de coleções e suporta subsetting e outras funcionalidade.

forEach

Subtag de <choose> que acompanha as tags <when> e executa somente se todas as condições anteriores forem falsas.

otherwise

Subtag de <choose> que inclui seu corpo se sua condição for verdadeira.

when

Tag condicional que estabelece um contexto operações condicionais mutuamente exclusivas, definidas nas tag<when> e <otherwise>.

choose

Avalia o corpo da tag se a condição for verdadeira.if

Mesmo que <%= ... >, mas para expressões. out

Page 23: Aula 12 - JSTL

TagTagTag setsetset

• Definição:– Define o valor de uma variável ou propriedade de um objeto.

• Atributos:

• Corpo da Tag:– Atributo value

Escopo da variável (page, request, session ou application).FalseScope

Propriedade do objeto alvo.Falseproperty

Objeto alvo.Falsetarget

Valor a ser atribuído na variável.Falsevalue

var

Nome

Nome da variávelFalse

DescriçãoObrigatório

Page 24: Aula 12 - JSTL

Exemplo Exemplo Exemplo setsetset

<c:set var="nome" value="Andre"/><br>Variável nome: <c:out value="${nome}"/><br>

<c:set target="${usuario}" property="nome" value="${nome}"/>Propriedade nome do objeto usuário: &nbsp;<c:out value="${usuario.nome}"/><br>

Page 25: Aula 12 - JSTL

TagTagTag removeremoveremove

• Definição:– Remove uma variável de escopo.

• Atributos:

• Corpo da Tag:– Não utilizado.

Escopo da variável (page, request, session ou application).Falsescope

var

Nome

Nome da variável a ser removida.True

DescriçãoObrigatório

Page 26: Aula 12 - JSTL

Exemplo Exemplo Exemplo removeremoveremove

Antes da remoção: <c:out value="${nome}"/><br><c:remove var="nome"/><c:out value="${nome}" escapeXml="false">

Variável <i>nome</i> foi removida do escopo!</c:out>

Page 27: Aula 12 - JSTL

TagTagTag catchcatchcatch

• Definição:– Captura uma exceção ocorrida no corpo da tag.

• Atributos:

• Corpo da Tag: – Bloco (html/jsp/tags) cujas exceções serão capturadas pela tag.

var

Nome

variável, de escopo de página (page), que receberá a exceção. Caso não seja definida, a exceção será ignorada.

False

DescriçãoObrigatório

Page 28: Aula 12 - JSTL

Exemplo Exemplo Exemplo catchcatchcatch

<%-- O seguinte trecho gera exceção, já que a propriedade NOME não existe na classe usuario --%>

<c:catch var="excecao"><c:set target="${usuario}" property="nome" value="${nome}"/>

</c:catch>

Exceção:&nbsp;<c:out value="${excecao}">Nenhuma</c:out><br/>

Page 29: Aula 12 - JSTL

TagTagTag urlurlurl

• Definição:– Cria uma string representando uma url

• Atributos:

• Corpo da Tag: – Tags <c:param> (opcionais).

Contexto da urlfalsecontext

Valor da url (relativa ou absoluta).falsevalue

Escopo da variável.falsescope

var

Nome

Variável que recebe a url. Caso omitido, url será impressa na página.

false

DescriçãoObrigatório

Page 30: Aula 12 - JSTL

TagTagTag paramparamparam

• Definição:– Cria uma string representando uma url.

• Atributos:

• Corpo da Tag: – Atributo value

Valor do parâmetro.FalseValue

Name

Nome

Nome do parâmetro.True

DescriçãoObrigatório

Page 31: Aula 12 - JSTL

Exemplo Exemplo Exemplo urlurlurl / / / paramparamparam

URL direto na página:&nbsp; <c:url value="hello.jsp"/>

URL com parâmetros atribuída a uma variável:&nbsp;<c:url value="/hello.jsp" var="url"><c:param name="nome" value="Andre"/><c:param name="sobreNome" value="Schwerz"/>

</c:url>

<c:out value="${url}"/>

Page 32: Aula 12 - JSTL

TagTagTag redirectredirectredirect

• Definição:– Redireciona o cliente para outra URL.

• Atributos:

• Corpo da Tag: – Tags <c:param> (opcionais).

Contexto da URL redirecionada.Falsecontext

url

Nome

URL a ser redirecionada.False

DescriçãoObrigatório

Page 33: Aula 12 - JSTL

Exemplo Exemplo Exemplo redirectredirectredirect

<c:redirect url="http://www.justjava.com.br"/>

<c:redirect url="/showUser.jsp"><c:param name="user" value="felipeal"/>

</c:redirect>

Page 34: Aula 12 - JSTL

TagTagTag importimportimport

• Definição:– Importa o conteúdo de uma url.

• Atributos:

• Corpo da Tag: – Tags <c:param> (opcionais).

código de caracteres (opcional) do recurso da URLfalsecharEncoding

variável do tipo java.io.Reader que receberá a URLfalsevarReader

Url do recurso a ser importado.trueurl

Contexto da urlfalsecontext

Escopo da variável.falsescope

var

Nome

Variável que recebe a url. Caso omitido, url será impressa na página.

false

DescriçãoObrigatório

Page 35: Aula 12 - JSTL

Biblioteca JSTL

FMT

Page 36: Aula 12 - JSTL

• Sintaxe padrão

FMTFMTFMT

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

Page 37: Aula 12 - JSTL

• Definição:– Formata um valor numérico de acordo com as preferências de localização

do usuário ou de forma customizada com número, moeda e porcentagem.• Atributos:

TagTagTag <<<fmtfmtfmt:::formatNumberformatNumberformatNumber>>>

Escopo da variávelFalsescope

Variável que conterá a saída.Falsevar

Dígitos mínimos da parte fracionária da saída.FalseminFractionDigits

Dígitos máximos da parte fracionária da saída.FalsemaxFractionDigits

Dígitos mínimos da parte inteira da saída.FalseminIntegerDigits

Dígitos máximos da parte inteira da saída.FalsemaxIntegerDigits

Indica se a saída conterá separadores decimais, de milhar, etc.FalsegroupingUsed

Símbolo da moeda.FalsecurrencySymbol

Código ISO da moeda.FalsecurrencyCode

Padrão de formatação.Falsepattern

Number | Currency |PercentFalsetype

value

Nome

Valor a ser formatado.False

DescriçãoObrig.

Page 38: Aula 12 - JSTL

Exemplo Exemplo Exemplo <<<fmtfmtfmt:::formatNumberformatNumberformatNumber>>>

<fmt:formatNumber type="currency" value="999.999" /><fmt:formatNumber type="number" value="999.999" /><fmt:formatNumber type="percent" value="0.10" />

<fmt:formatNumber type="number" pattern="000.000" value="99.99" /><fmt:formatNumber type="number" pattern="##0.000" value="99.99" /><fmt:formatNumber type="number" pattern="#,#00.0#" value="2999" />

<fmt:formatNumber type="number" maxFractionDigits="2" value="999.999"/><fmt:formatNumber type="number" maxIntegerDigits="2" value="899.999"/>

R$ 1.000,00

999,999

10%

099,990

99,990

1.000

99,999

Page 39: Aula 12 - JSTL

• Definição:– Analisa a representação de número, moeda ou porcentagem.

• Atributos:

• Corpo da Tag: – Atributo value

TagTagTag <<<fmtfmtfmt:::parseNumberparseNumberparseNumber>>>

Escopo da variável.Falsescope

Variável que conterá a saída.Falsevar

Especifica que somente a porção inteira deve ser analisada.FalseintegerOnly

Identifica locale para o analisador.FalseparseLocale

Padrão de formatação.Falsepattern

number | currency | percentFalsetype

value

Nome

String a ser analisadaFalse

DescriçãoObrigatório

Page 40: Aula 12 - JSTL

Exemplo Exemplo Exemplo <<<fmtfmtfmt:::parseNumberparseNumberparseNumber>>>

<c:set var="reais" value="R$ 5,00" />

<fmt:parseNumber value="${reais}" type="currency"parseLocale="pt_BR" />

Page 41: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::formatDateformatDateformatDate>>>

• Definição:– Formata data/hora

• Atributos:

• Corpo da Tag: – Não há corpo.

Escopo da variável.Falsescope

Variável que conterá a saídaFalsevar

TimeZone da data/hora a ser formatado.FalsetimeZone

Padrão de formatação customizadoFalsePattern

Formatação da hora: default | short | meddium | long |fullFalsetimeStyle

Formatação da data: default | short | meddium | long |fullFalsedataStyle

Date | Time | BothFalseType

Value

Nome

Valor a ser formatadoTrue

DescriçãoObrigatório

Page 42: Aula 12 - JSTL

Exemplo Exemplo Exemplo <<<fmtfmtfmt:::formatDateformatDateformatDate>>>

<jsp:useBean id="data" class="java.util.Date" />

<fmt:formatDate type="date" value="${data}"/>

<fmt:formatDate type="time" value="${data}"/>

<fmt:formatDate type="both" value="${data}"/>

<fmt:formatDate type="date" dateStyle="default" value="${data}"/><fmt:formatDate type="date" dateStyle="short" value="${data}"/> <fmt:formatDate type="date" dateStyle="medium" value="${data}"/><fmt:formatDate type="date" dateStyle="long" value="${data}"/> <fmt:formatDate type="date" dateStyle="full" value="${data}"/>

<fmt:formatDate type="time" timeStyle="default" value="${data}"/><fmt:formatDate type="time" timeStyle="short" value="${data}"/> <fmt:formatDate type="time" timeStyle="medium" value="${data}"/><fmt:formatDate type="time" timeStyle="long" value="${data}"/> <fmt:formatDate type="time" timeStyle="full" value="${data}"/>

29/11/2009

29/11/09

29/11/2009

29 de Novembro de 2009

Domingo, 29 de Novembro de 2009

29/11/2009

16:48:27

29/11/2009 16:48:27

16:48:27

16:48

16:48:27

16h48min27s BRST

16h48min27s BRST

Page 43: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::parseDateparseDateparseDate>>>

• Definição:– Analisa o formato da data/hora de acordo com o padrão.

• Atributos:

• Corpo da Tag: – Não há corpo.

Escopo da variável.Falsescope

Variável que conterá a saídaFalsevar

TimeZone da data/hora a ser formatado.FalsetimeZone

Padrão de formatação customizadoFalsePattern

Formatação da hora: default | short | meddium | long |fullFalsetimeStyle

Formatação da data: default | short | meddium | long |fullFalsedataStyle

Date | Time | BothFalseType

Value

Nome

Valor a ser formatadoTrue

DescriçãoObrigatório

Page 44: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::requestEncodingrequestEncodingrequestEncoding>>>

• Definição:– Configura a codificação de caractere da requisição.

• Atributos:

• Corpo da Tag: – Não há corpo.

value

Nome

Nome da codificação dos caracteres aplicado aos parâmetros da requisição.

false

DescriçãoObrigatório

Page 45: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::setLocalesetLocalesetLocale>>>

• Definição:– Define uma variável locale.

• Atributos:

• Corpo da Tag: – Não há corpo.

Escopo do Locale.Falsescope

???Falsevariant

value

Nome

Exemplo: pt_BR | en_US | pt_PT Ver ISO-639 e ISO-3166True

DescriçãoObrigatório

Page 46: Aula 12 - JSTL

Exemplo Exemplo Exemplo <<<fmtfmtfmt:::setLocalesetLocalesetLocale>>>

<fmt:setLocale value="en_US"/><fmt:formatNumber value="9876543.99" type="currency"/><br />

<fmt:setLocale value="pt_BR"/><fmt:formatNumber value="9876543.99" type="currency"/><br />

<fmt:setLocale value="pt_PT"/><fmt:formatNumber value="9876543.99" type="currency"/><br />

Page 47: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::timeZonetimeZonetimeZone>>>

• Definição:– Especifica um fuso horário para o corpo da página.

• Atributos:

• Corpo da Tag: – Tags <fmt:formatDate>

Value

Nome

O valor do fuso horário. Uma string é interpretada como um ID. Pode ser um ID suportado pela plataforma Java, (tal como "America/Los_Angeles") ou um ID personalizado (tal como "GMT-8").

True

DescriçãoObrigatório

Page 48: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::setTimeZonesetTimeZonesetTimeZone>>>

• Definição:– Configura o fuso horário em uma variável de configuração.

• Atributos:

• Corpo da Tag: – Não há corpo.

Escopo da variável ou do fuso horário especificado.Falsescope

Nome da variável de escopo que armazenará o fuso horáriodo tipo java.util.TimeZone.

Falsevar

value

Nome

O valor do fuso horário. Uma string é interpretada como um ID. Pode ser um ID suportado pela plataforma Java, (tal como "America/Los_Angeles") ou um ID personalizado (tal como "GMT-8").

True

DescriçãoObrigatório

Page 49: Aula 12 - JSTL

ExemploExemploExemplo

<jsp:useBean id="currentDate" class="java.util.Date" />

<fmt:timeZone value="GMT+7:00">

<fmt:formatDate value="${currentDate}" type="both" dateStyle="full"timeStyle="full"/>

</fmt:timeZone>

<br/>

<hr/>

<fmt:setTimeZone value="GMT-10:00" var="timeZone" scope="page"/>

<fmt:timeZone value="${timeZone}"><fmt:formatDate value="${currentDate}"

type="both"dateStyle="full"timeStyle="full"/>

</fmt:timeZone>

Page 50: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::bundlebundlebundle>>>

• Definição:– Carrega um resource bundle usado no corpo da página.

• Atributos:

• Corpo da Tag: – Tags <fmt:message>

O prefixo para o valor da chave da mensagem de qualquer ação <fmt:message>.

falseprefix

basename

Nome

Nome base do resource bundle. Este é o nome base do resource que pode ter sufixo tais com “.class” e “.properties”

true

DescriçãoObrigatório

Page 51: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::setBundlesetBundlesetBundle>>>

• Definição:– Carrega um resource bundle e o armazena em uma variável.

• Atributos:

• Corpo da Tag: – Não há corpo.

Escopo da variável.FalseScope

Nome da variável de escopo que armazena o resource bundle.Falsevar

Basename

Nome

Nome base do resource bundle. Este é o nome base do resource que pode ter sufixo tais com “.class” e “.properties”

true

DescriçãoObrigatório

Page 52: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:::messagemessagemessage>>>

• Definição:– Chave dos mapas para localização de mensagens e execução de

substituição de parâmetros.

• Atributos:

• Corpo da Tag: – Tags <fmt:param>

Escopo da variável.falsescope

Variável que armazena a mensagem.falsevar

Resource bundle em que a mensagem será procurada.falsebundle

key

Nome

Chave da mensagem que será buscada.false

DescriçãoObrigatório

Page 53: Aula 12 - JSTL

ExemploExemploExemplo

<fmt:bundle basename="labels">Hello: <fmt:message key="hello" />GoodBye: <fmt:message key="goodbye" />

</fmt:bundle>

<fmt:bundle basename="file_en" prefix="cliente.">Primeiro Nome: <fmt:message key="primeiroNome" /><br/>Último Nome: <fmt:message key="ultimoNome" /><br/>

</fmt:bundle>

hello=Olágoodbye=Até mais

cliente.primeiroNome=First Namecliente.ultimoNome=Last Namecliente.endereco=address

Page 54: Aula 12 - JSTL

TagTagTag <<<fmtfmtfmt:param>:param>:param>

• Definição:– Fornece um argumento que será substituído na mensagem.

• Atributos:

• Corpo da Tag: – Atributo value

Value

Nome

Argumento usado para ser substituído.True

DescriçãoObrigatório

Page 55: Aula 12 - JSTL

ExemploExemploExemplo

<fmt:bundle basename="file_en" prefix="cliente.">Primeiro Nome: <fmt:message key="primeiroNome" /><br/>Último Nome: <fmt:message key="ultimoNome" /><br/><fmt:message key="saudacao">

<fmt:param value="André" /></fmt:message>

</fmt:bundle>

cliente.primeiroNome=First Namecliente.ultimoNome=Last Namecliente.endereco=addresscliente.saudacao=Olá Sr.{0}

Page 56: Aula 12 - JSTL

ResumoResumoResumo

DescriçãoTags

Analisa a representação de uma data e/ou hora.parseDate

Formata a data e/ou hora usando um padrão e estilo especificados.formatDate

Analisa a representação de um número, moeda ou porcentagem.parseNumber

Formata um valor numérico como um número, moeda ou porcentagem.formatNumber

Fornece um argumento que será substituído na mensagem.param

Exibe uma mensagem baseado em sua chave.message

Carrega um resource bundle e armazena na sua variável de configuração.setBundle

Carrega um resource bundle para o corpo da página.bundle

Configura a variável de fuso horário.setTimeZone

Especifica o fuso horário para o corpo da página.timeZone

Armazena um locale na variável de configuração locale.setLocale

Configura a codificação dos caracteres da requisição.requestEncoding

Page 57: Aula 12 - JSTL