domingo, 22 de julho de 2007

Atributos dinâmicos nas Tag files

Continuando a série sobre criação de Tag files, vamos conhecer um excelente tópico da especificação JSP 2.0, os atributos dinâmicos das Tag files. No exemplo do post (Criando uma Tag File), foram criados diversos atributos na tag file de nome text. Mas dessa forma, cada vez que quizéssemos colocar um atributo novo nessa tag teríamos que alterar o comportamento da mesma.

Com o dynamic-attributes da Tag File, os atributos podem ser escolhidos na codificação pelo programador.

Vamos aos códigos.

Tag File:




Na primeira linha temos a diretiva <%@tag, que informa algumas características da tag, como codificação, se terá conteúdo e outras opções. É nela que se encontra a configuração para utilizarmos os atributos dinâmicos, o atributo chamado dynamic-attributes. Como valor eu coloquei dynattrs, mas você pode colocar qualquer valor. A função dessa tag é criar uma tag HTML input.

A chave principal é varrer o atributo
dynattrs com um forEach da JSTL para obter os pares key/value para acrescentarmos no código HTML a ser gerado pela tag.

Após obtermos todos os atributos informados pelo programador na JSP, iremos colocá-los na tag HTML input através da variável atributos que foi preenchida pelo forEach.


JSP:


Quaisquer atributos que fazem parte da especificação HTML podem ser passados na JSP.

Resultado:


Note que desta forma temos uma Tag File visualmente melhor, mais fácil de dar manutenção e com mais vantagens sobre as tags que possuem atributos estáticos. Criamos uma tag genérica, ou seja, ela poderá ser um text, radio, hidden e etc.

Você pode ver nesse post como configurar as Tag Files (onde colocá-las, como chamá-las em JSPs...). Nesse exemplo você precisará das libs do JSTL.

Até a próxima.

Nenhum comentário: