49 votes

Mystérieuse Éclipse JSP Erreurs de Validation

Eclipse (Helios), parfois des marques valables à la recherche JSP contenu comme ayant des erreurs. Il semble qu'il se casse souvent quand j'utilise le <c:if> balise. Par exemple, dans une JSP avec juste ce contenu:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<body>

<c:if test="${1 == 1}">
something
</c:if>

</body>
</html>

Les messages d'erreur suivants s'afficher dans la section "Problèmes" de l'onglet après je compile:

  • Incompatible opérande types de Chaîne et int ligne 1
  • javax.servlet.jsp.JspException ne peut pas être résolu à une ligne de type 1
  • javax.servlet.jsp.PageContext ne peut pas être résolu à une ligne de type 1

Le code fonctionne très bien. La validation pour les Jsp ont des questions, suis-je raté quelque chose d'évident, ou est-ce à indiquer que quelque chose n'est pas configuré correctement.

47voto

Eh bien, j'ai trouvé comment résoudre cette erreur. Ajoutez ceci à votre Maven dependency(pom.xml):

<!-- dependency to fix JSPServletException -->
    <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>jsp-api</artifactId>
        <version>6.0.32</version>
        <scope>provided</scope>               
    </dependency>

Faire un commentaire si vous le trouvez utile, comme beaucoup comme il m'a aidé.

38voto

worpet Points 1435

Sur la base des commentaires, j'ai fini par éteindre une partie de la JSP de validation, qui fixe cette.

  1. Allez à "menu Projet->Propriétés->Validation".
  2. Cliquez Sur "Configurer Les Paramètres D'Espace De Travail...".
  3. Désélectionnez les options pour les JSP de la Syntaxe du programme de validation. Vous devez décocher la fois manuel et construire

J'espérais qu'il me manquait quelque chose et il y avait un moyen de résoudre ce problème, mais je dois concéder que les JSP de validation est indésirable.

21voto

rjcorujo Points 171

J'ai eu le même problème, le problème est l' jsp-api bibliothèque, vous pouvez ajouter la dépendance à votre pom (comme expliqué dans d'autres réponses) ou vous pouvez également ajouter de la cible au moment de l'exécution et de l'éclipse sera automatiquement ajouté à la bibliothèque de votre chemin de classe:

Project -> Properties -> Targeted Runtimes 

Et sélectionnez votre serveur.

5voto

Paranoja Points 41

Afin de fixer:
- javax.servlet.jsp.* besoins jsp-api.jar
- javax.servlet.http.* besoins servlet-api.jar

Vous devez ajouter ces bibliothèques à Java Build path du projet d'installation. Ces bibliothèques peuvent être trouvés dans tomcat/lib (pour Tomcat 6.0).

3voto

Xander Plooy Points 31

C'est une vieille question, mais pensé que je pourrais oublier que j'ai aussi dans Juno sur Mac OS X-plus précisément le plus souvent après que j'ai modifier un fichier externe, puis actualiser le projet dans Eclipse. Souligne dans toutes sortes d'endroits bizarres, même à mi-chemin par le biais de mots en JSP commentaires.

Pourraient l'être (probablement?!) être lié à un bug 376926 qui, apparemment, suis fixé un peu plus d'une semaine?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X