Hacer el mapping entre el nombre de etiqueta y una clase Tag

1907 vistas

En un fichero TLD, tendremos que añadir, para cada tag, las etiquetas siguientes:



xml
  1. <tag>
  2.   <name>name</name>
  3.   <tagclass>package.NameTag</tagclass>
  4.   <teiclass>package.NameTEI</teiclass>
  5.   <bodycontent>JSP</bodycontent>
  6.   <info>description</info>
  7.  
  8.   <attribute>
  9.     <name>arg1</name>
  10.     <required>false</required>
  11.     <rtexprvalue>true</rtexprvalue>
  12.   </attribute>
  13. </tag>



Con los siguientes elementos:

  • name: nombre de la etiqueta (uso: ).
  • tagclass: nombre de la clase Java que representa la etiqueta (heredada de Tag).
  • teiclass: nombre de la clase Java que provee informaciones complementarias sobre la etiqueta (opcional).
  • bodycontent: tipo de contenido aceptado por la etiqueta. Puede tomar los valores de empty (sin cuerpo), JSP (el contenido se interpretará como JSP), o tagdependent (el contenido no se interpretará) (opcional, por defecto: JSP).
  • info: texto de descripción del tag (opcional).
  • attribute: cero, una o varias declaraciones de atributos del tag, descompuestos de la siguiente forma:
     
     
  • name: nombre del atributo. La clase tagclass tiene que tener un mutador para este atributo.
     
  • required: true/false, indica si el atributo es obligatorio o no (opcional, por defecto: false)
     
  • rtexprvalue: true/false, indica si el atributo puede ser el resultado de una expresión (${bean} o <%=bean%>) o si tiene que ser una cadena estática (opcional, por defecto: false/valor estático)