Problema com Expression Language e Tags customizadas [RESOLVIDO]

4 respostas
H

Olá pessoal,

Estou enfrentando um problema com uma tag customizada.

Criei uma tag que esta em /WEB-INF/tags:

<%@ attribute name="id" required="true" %>

<input type="text" id="${id}" name="${id}" />
<script type="text/javascript">
	$("#${id}").datepicker({dateFormat: 'dd/mm/yy'});
</script>

o JSP que utiliza essa tag é o seguinte:

<%@taglib tagdir="/WEB-INF/tags" prefix="calendar" %>

.
.
.

Data de Nascimento: <calendar:campoData id="dataNascimento"></calendar:campoData>

Mas vendo o source code no browser, a pagina html fica da seguinte forma:

<hr/>

	<form action="adicionaContato" method="post">
		Nome: <input type="text" name="nome" /><br /> 
		Email: <input type="text" name="email" /><br /> 
		Endereco: <input type="text" name="endereco" /><br /> 
		Data de Nascimento: 


<input type="text" id="${id}" name="${id}" />
<script type="text/javascript">
	$("#${id}").datepicker({dateFormat: 'dd/mm/yy'});
</script><br />

Ou seja, ele esta colando a tag toda no html e nao o que eu gostaria que fizesse que era criar o calendario jquery-ui no campo.

Na mesma pagina eu pus o include do jquery

<link type="text/css" href="css/jquery.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>

E as minhas tags core <c: /> estao funcionando OK. Nao sei o que está acontecendo.
Alguem pode me dar um help?

4 Respostas

C

Os includes estao no head?? Talvez ele esteja com dificuldades para importar?

Tu sabe usar o firebug? se sim , no Console da para ver os erros.

luxu

pra JSF com primefaces já tem pronta esse tipo de tag…

H

Entao, eu uso sim o firebug e os includes estao no . O erro que eu recebo eh o seguinte

uncaught exception: Syntax error, unrecognized expression: #${id}

Eu nao sei se eh a tag que nao esta funcionando ou se eh o E.L. que nao esta traduzindo. Pq vai pro HTML como se fosse #${id} e ele nao ta pegando o ID certo, que seria o ID que eu informo na tag

<calendar:campoData id="dataNascimento"></calendar:campoData>
H

Consegui resolver o problema!

Estava usando a versao 5.5 do Tomcat. Quanto troquei para 6.0, funcionou redondo.

Valeu!

Criado 11 de janeiro de 2012
Ultima resposta 12 de jan. de 2012
Respostas 4
Participantes 3