impossible de charger la bibliothèque de tags JSTL dans incorporé serveur Jetty

Je suis en train d'écrire une application web qui s'exécute au sein d'un intégré à la Jetée de l'instance.

Lorsque je tente d'exécuter une JSTL déclaration, je reçois l'exception suivante:

org.apache.jasper.JasperException: /index.jsp(1,63) PWC6188: L'uri absolu: http://java.sun.com/jsp/jstl/core ne peut pas être résolu dans les deux web.xml ou les fichiers jar déployé avec cette application

J'ai le texte suivant pots sur le chemin de classe

  • ant-1.6.5.jar
  • ant-1.7.1.jar
  • ant-launcher-1.7.1.jar
  • core-3.1.1.jar
  • jetty-6.1.22.jar
  • jetty-util-6.1.22.jar
  • jsp-2.1-6.1.14.jar
  • jsp-api-2.1.jar
  • jstl-1.2.jar
  • servlet-api-2.5-20081211.jar
  • servlet-api-2.5-6.1.14.jar
  • standard-1.1.2.jar

Mon web.xml ressemble à ceci:

<?xml version="1.0" encoding="ISO-8859-1"?>  
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee h77p://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"  
    version="2.4">  
    <display-name>test</display-name>  
</web-app>

Mon code ressemble à ceci:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>  
<html>  
    <body>  
        <h2>Hello World!</h2>  
        <%= new java.util.Date() %><br/>  
        ${1+2}<br/>  
        <c:out var="${5+9}"/><br/>  
    </body>  
</html>

J'ai commencé mon serveur Jetty embarqué comme ceci:

Server server = new Server(80);  
WebAppContext context = new WebAppContext("pig-1.0-SNAPSHOT.war","/");
server.addHandler(context);
server.start();

J'ai passé les deux derniers jours à expérimenter avec différentes combinaisons de fichiers jar, web.xml configurations, et de la bibliothèque de balises déclarations, mais en vain.

Comment puis-je obtenir un serveur Jetty embarqué et en cours d'exécution avec plein de JSTL soutien?

OriginalL'auteur | 2010-01-27