Erro JSTL

Galera,

Estou tentando utilizar tag libraries com EL aqui na empresa.

entao segue o que estou fazendo
1º adicionei o jstl-1.1.0.jar no meu projeto,

entao meu servlet faz o seguinte:

Collection cltLocalidade = null;
cltLocalidade =  //metodo que carrega uma coleção de localidade.

request.setAttribute("cltLocalidade", cltLocalidade);

getServletContext().getRequestDispatcher("/web-content/jsp/frmLocalidade.jsp").forward(request,response);

e minha jsp

<body>
    <c:forEach var="localidade" items="${cltLocalidade}">
        ${localidade.cdLocalidade}
    </c:forEach>
<body>

e está exibindo o seguinte erro:

26/11/2009 11:48:55 org.apache.jasper.compiler.TldLocationsCache processWebDotXml
WARNING: Internal Error: File /WEB-INF/web.xml not found
javax.servlet.ServletException: org/apache/taglibs/standard/tlv/JstlCoreTLV (Unsupported major.minor version 49.0)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:244)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
at cavisit.ctrl.LocalidadeControl.executeServlet(LocalidadeControl.java:66)
at cavisit.ctrl.LocalidadeControl.doGet(LocalidadeControl.java:29)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:419)
at org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)

Sendo que meu projeto nao tem o arquivo ewb.xml, uso o jdk1.4 e tomcat 5.0.28

Bom pessoal,

consegui resolver o problema, então segue a sulução:

No tomcat 5.0.28 (Nao sei se nas versões posteriores ocorram este detalhe) não consta o arquivo jstl-1.1.0.jar referente a esta versão entao adicionei-o dentro da pasta lib do tomcat, junto com os outos .jar

Inseri no projeto o jstl.jar e o standart.jar e resolveu.

Kra qndo tem esse erro Unsupported major.minor version 49.0 é por que você está tentando utilizar algum código compilado para uma versão mais nova em uma JDK com versão anterior.

Ex: compilado para 1.5 e tentando rodar na 1.4

opa, eu cliquei a la loco e acho que era por isso mesmo que gerou aqueles erros loucos.

E corrigindo o que eu escrevi anteriormente:

Se colocar o jstl-1.1.0.jar no lib do tomcat, ele funcionou porque o meu projeto tem o tomcat no classpath.

Enão, voce deve colocar o .jar no lib do seu projeto e adicionalo no claspath.

Dai tudo fica lindo. Obrigado pela dica danilloh.

Abraço.

um detalhe importante se vc tentar subir o arquivo .jar pelo eclipse, ele nao eh importado fisicamente para o seu projeto, se abrir o seu projeto pelo explorer verá a pagina lib, vazia e precisa ser feito manualmente. Nao pq o eclipse nao faz isso automatico. Ate hj nao entendo.

abraco,