Empacotando uma Tag Library - package "tag library"

3 respostas
pedroabs

Caros Srs.

Como posso empacotar em um arquivo JAR uma tag library desenvolvida por mim?

Achei este tutorial porém não consegui fazer funcionar:
http://download.oracle.com/docs/cd/E12840_01/wls/docs103/taglib/admin.html

Um detalhe importante é que esta minha tag-library utiliza de um outro arquivo jar.

Grato de sua atenção.

3 Respostas

renanpto

Se for jsp tag files voce tem que criar a pasta tags dentro da META-INF, e criar um .tld para mapear essas tags…
Ficando ± assim:

<tag-file>
		<name>nomeTag</name>
		<path>/META-INF/tags/jspTag.tag</path>
		<description>descricao</description>
	</tag-file>

E se for uma classe, esse fonte deve estar no tld (obrigatoriamente).

<tag>
		<name>nome</name>
		<tag-class>br.com.tag.ClassTag</tag-class>
		<body-content>empty</body-content>
		<description>xxxxx</description>
	</tag>

No .tld lembre-se de setar os identificadores das tags.

<tlib-version>1.2</tlib-version>
	<jsp-version>2.0</jsp-version>
	<short-name>shortName</short-name>
	<uri>http://www.dominio.com.br/tags/identificador</uri>
	<display-name>xxxxxxx</display-name>
pedroabs

Caro Sr. renanpto

NÃO é uma tag file, é uma Classic Tag desenvolvida por mim que utiliza de um outro jar. As minhas perguntas são:

  1. Não entendi o que o sr. quis dizer com

    No .tld lembre-se de setar os identificadores das tags.

  2. Na minha estrutura do arquivo jar aonde devo coloocar o outro arquivo jar que a minha tag utiliza?

(segue a estrutura desejada)

BundledTag.jar

  • META-INF/extenso.tld
  • com/pedroabs/mytags/MyExtenso.class (com.pedroabs.mytags faz parte do pacote)
  • lib/extenso.jar

Gostaria de apenas re-utilizar a BundledTag.jar em vários projetos sendo que bastasse configurar a diretiva “taglib” nas páginas jsp, assim como fazemos com as custom tag libraries.

Talvez a pergunta seja, como o servidor TOMCAT coloca no classpath o jar “extenso.jar”…?

Grato mais uma vez !!

pedroabs

Gostaria de esclarecer o seguinte:

O jar que quero criar contem uma única Tag Handler. Esta Tag Handler, possui uma dependência de outro jar chamado extenso.jar. Gostaria de saber se é possível distribuir este jar dentro do jar que será criado para a Tag Handler, que, no caso, se chamará BundleTag.jar.

Grato !

Criado 3 de junho de 2011
Ultima resposta 3 de jun. de 2011
Respostas 3
Participantes 2