Taglibs em atributo XML/JSP 1.2

Pessoal,

Estou tentando migrar minhas páginas JSP para formato XML, segundo a especificação JSP 1.2.

Tudo tem funcionado corretamente, até eu tentar utilizar uma chamada de taglib dentro de um atributo XML, por exemplo:

<a href="<c:out value='${url}'/>">...</a>

Ao chamar o JSP, estou obtendo um erro de parser no XML, pois ele não está permitindo o caracter “<” dentro do atributo “href” do elemento “a”.

Usando JSP puro, sem formatação XML, não ocorre nenhum erro, pois não há “parsing” de XML.

Se eu utilizar &lt; e &gt;, o meu link fica errado, porque a chamada a taglib não é executada:

&lt;a href=&quot;&amp;lt;c&#58;out value='$&#123;url&#125;'/&amp;gt;&quot;&gt;...&lt;/a&gt;

Gera um link como:

&lt;a href=&quot;&lt;c&#58;out value='$&#123;url&#125;'/&gt;&quot;&gt;...&lt;/a&gt;

Enquanto deveria gerar o resultado da chamada a taglib, algo como:

&lt;a href=&quot;/forum/usuario/listar&quot;&gt;...&lt;/a&gt;

Estou usando JBoss 3.0.6 x Tomcat 4.1.18.

Alguém sabe como utilizar taglibs dentro de atributos XML ?

Vc importou o taglib corretamente???

<%@ taglib prefix=“c” uri=“http://java.sun.com/jstl/core” %>

Pois, Sua sintaxe parece estar correta.
<c:out value="${}"/>

Experimente usar a Struts Framework, pois ela poderá te atender de maneira mais completa (maior quantidade de tags).

veja em http://jakarta.apache.org/struts/

existe uma extensão da struts que facilita muito a criação de layouts em:
http://struts.application-servers.com/

[]s, Welington B. Souza

Valeu Wellington.

Mas eu ainda não quero migrar para Struts, só queria entender o que acontece e se há solução (menos radical) de solucionar essa situação, visto que a especificação JSP 1.2 deveria prever essa situação, só não sei como.

Ouvi muito falar em Struts, vou com certeza gastar um tempinho para conhecê-la, mas gostaria de entender o que se passa “under the hood”.

Eu importei a taglib corretamente, eu consigo utilizá-la em outros trechos do JSP/XML.

Obrigado :wink:

E ai conseguiu resolver? qual foi a solução? pode postar um exemplo?