Fala aê galera!
Recentemente vinha tentando integrar o
Struts e o
JSTL, mas sempre parava na mesclagem e melava tudo. Foi quando descobri que o web.xml que vem com Struts não consegue interpretar o XML do JSTL.
Tentarei ser o mais breve possível por essas explicações serem um tanto chatas:
Download do Struts
Home Download:
Download direto:
Download do JSTL
Home Download:
Download direto:
Mesclando tudo em um Projeto utilizando a IDE Eclipse:
File=> New Project => Tomcat Project (Para os que tem o plugin sysdeo - link de download logo abaixo).
File => New Project => Java Project
Botão direito em cima do Projeto => Import => Archive File => Procure o Struts descompactado => webapps => Selecione todos os tipos de arquivos para exibir "*.war".
E clique em Finalizar.
Após isso descompacte o JSTL entre nele:
jakarta-taglibs-standard-20060516/jakarta-taglibs/standard/lib
Aqui dentro copie: standard.jar e o jstl.jar.
Jogue dentro de seu "Projeto/WEB-INF/lib".
Vá no Eclipse e selecione os dois e execute com o botão direito:
Build Path => Add Build Path
Solução
Abra o web.xml do seu projeto. Ele vai estar assim:
<?xml version="1.0" encoding="ISO-8859-1"? >
< !DOCTYPE web-app
&nbssp;PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
&nbssp;"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd" >
<br>
< web-app >
Mude para:
< ?xml version="1.0" encoding="ISO-8859-1"? >
< !DOCTYPE web-app
&nbssp;PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
&nbssp;"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd" >
< web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4" >
Basicamente a alteração foi a última linha.
Após isso vá no work de seu projeto (se você usa algum plugin para a IDE Eclipse em conjunto com o Tomcat do qual desenvolve seus projetos, como o
Sysdeo).
O diretório work, no caso do Sysdeo, fica em: /usr/local/Tomcat-5.5.15/webapps/Nome_Projeto/work
Caso contrário o padrão é ficar em: /usr/local/Tomcat-5.5.15/work/Catalina/localhost/Nome_Projeto
Delete toda a informação no diretório acima especificado.
Pare o serviço e em seguida reinicialize-o. Em seu navegador execute um CTRL+R (Atualizar sem refresh).
Para testar se seu JSTL e seu Struts estão se dando bem, faça isso:
Crie um arquivo teste.jsp com o conteúdo:
< %@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" % ><br>
< c:set var="time" value="VAI PALMEIRAS!!!" / ><br>
< c:out value="${time}" / ><br>
${time}
PS: Perceba que as duas formas desta vez irão funcionar!
Dúvidas?
Comentem abaixo!
guinet gmail com