quinta-feira, 18 de agosto de 2011

Implementando TagFiles JAVA

Olá a todos, hoje vamos falar sobre TagFiles do JAVA.
Como todo desenvolvedor J2EE sabe quase todos os frameworks web usam as maravilhosas e magicas TagLibs.


Vamos começar com sua definição para evitar erros na implementação: 
(como já dizia um velho amigo "primeiro entenda o conceito" por Franklin Ronald)
Tag Files fazem parte da especificação JSP 2.0 e são arquivos que servem para encapsular blocos de código evitando código repetido, tem suporte a EL e JSTL,
assim você pode evitar aquele código cheio de <jsp:include> criando componentes do modo correto, vou exemplificar criando um pequeno projeto.


Dentro do diretório '/WEB-INF/tags/' crie um arquivo com a extensão .tag

















Dentro deste arquivo.tag você tem os seguintes ponto chave:
1. Define a descrição, codificação entre outras propriedades do componente.
2. Atributos de entrada, estas são as propriedades que trafegam entre o jsp e o componente.
3. Eu comentei logo acima que tag files suporta EL, mas não citei que o mesmo utiliza EL em sua estrutura
   os atributos definidos podem ser recuperados utilizando EL.
4. Muitas vezes é necessário ter atributos mais consistentes e mais complexos, 
   para estes casos eu utilizo fragmentos jsp
   no caso utilizei porque no atributo conteúdo pode existir código html, javascript, etc ...
















Na JSP que irá utilizar nosso componente temos a seguinte estrutura:
1. A propriedade prefix como o nome já diz será o prefixo que sua taglib utilizará neste jsp,
   a propriedade tagdir diz onde é o diretório que contem seus componentes *.tag,
   no momento da utilização do componente sua tag é <prefix:nomedoarquivo.tag>.
2. Sou programador e não tenho noção de design, CSS pra deixar bunitinho :)
3. Utilizando nosso componente, preenchendo somente o atributo titulo.
4. Como já tinha dito, esta ai nosso atributo definido como fragmento para informações mais completas.
5. Fechando a tag do nosso componente.


















Código HTML utilizando nosso componente:
































Resultado do nosso exemplo:






















Qualquer dúvida sobre o tema é só deixar um comentário, e fique a vontade para pedir outra matéria sobre Desenvolvimento de Software, Banco de dados,
Administração Linux*, etc ...


Obrigado



http://www.oracle.com/technetwork/java/javase/documentation/index.html
http://java.sun.com/j2ee/overview.html
http://www.oracle.com/technetwork/java/javaee/jsp/index.html
http://download.oracle.com/javaee/1.4/tutorial/doc/JSPTags5.html
http://download.oracle.com/javaee/1.4/tutorial/doc/JSPIntro7.html
http://www.oracle.com/technetwork/java/index-jsp-135995.html

3 comentários:

  1. Legal o post heim! Muito bom, era isso mesmo que eu precisava saber rs Valeu

    ResponderExcluir
  2. Esse é meu objetivo Bruno, qualquer coisa é só postar ai no site ou enviar sua dúvida por email

    ResponderExcluir
  3. Olha um site que eu uso de referencia sempre quando o assunto é python...
    http://henriquebastos.net/

    ali nos favoritos do meu safari ...

    ResponderExcluir