2008-09-27 8 views
7

Je viens d'installer Ganymede et j'y explore un vieux projet. Toutes mes JSP me donnent des erreurs de validation bizarres. Je vois des choses comme -Eclipse Ganymede ne valide pas correctement les JSP

Syntax error on token "}", delete this token 
Syntax error on token "catch", Identifier expected 
Syntax error, insert "Finally" to complete TryStatement 

Je fais des choses meilleures pratiques ici, pas scriplets ou quoi que ce soit, donc je pense que Eclipse applique correctement une classe Java validateur à mes pages JSP. Une idée sur la façon d'empêcher cela de se produire?

Sous Options/éditeurs/associations de fichiers je les éléments suivants pour JSPs:

JSP Editor (default) 
Web Page Editor 
Text Editor 
CSS JSP Editor 

Est-ce que je manque quelque chose?

Je pense aussi que cela est correct, mais juste au cas où ce n'est pas, voici ma directive de page -

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
pageEncoding="ISO-8859-1"%> 
+0

J'ai abandonné Ganymede parce que je ne pouvais pas trouver un moyen de désactiver sa validation. Les erreurs que vous voyez proviennent du code Java généré par Eclipse à partir de votre JSP. Il peut générer le mauvais code à cause d'un bug dans votre JSP, mais s'il ne peut pas identifier le problème, à quoi bon? – erickson

Répondre

3

Je viens de télécharger Ganymede 3.4.2 et d'y ajouter WTP 3.0.4 et cette erreur est passée pour moi.

2

Sous Préférences -> éditeurs -> les associations de fichiers, vous pouvez voir quel éditeur (s) sont associé aux fichiers .jsp. Peut-être qu'il a été associé à un mauvais éditeur, et la vérification du contenu. Vous pouvez trouver un éditeur JSP raisonnablement bon dans la boîte à outils Web Tools Platform (WTP).

+0

Je viens d'ajouter ce que je vois à la question ... – bpapa

3

Ce n'est pas vraiment quelque chose à propos de l'éditeur lui-même.

Cela se produit généralement en raison de
A) balises personnalisées qui manque une balise de début ou de fin provoquer un déséquilibre dans la traduction
ou
B) est le résultat une mauvaise manipulation de la variable de script pour les balises personnalisées par le JSP Validateur

L'un est un défaut dans le fichier JSP et l'autre est la faute du validateur. Aucun ne provoquera ce problème dans les prochaines versions de WTP 3.0.3 et Ganymede SR2.

1

J'ai le même problème. Quelque soit l'éditeur JSP est en Ganymède n'aime pas mes if/else scriptlets:

<% if(message != null) { %> 
    <p id="message"><%=message %></p> 
<% } else { %> 
    <p>Please login to view your account information.</p> 
<% } %> 

Il me dit:

Syntax error on token "}", delete this token 
Syntax error on token "catch", Identifier expected 
Syntax error, insert "Finally" to complete TryStatement 

... sur l'accolade de fermeture finale. J'ai les mêmes associations de fichiers que l'affiche originale. Je suppose que je vais essayer de trouver un autre éditeur JSP dans la boîte à outils WTP, mais j'étais sous l'impression qui est venu avec ma construction.

5

J'ai effectivement découvert ce que mon problème était par le eclipse webtools usergroup. Le problème pour moi était l'utilisation de la bibliothèque de balises personnalisées Spring. Si vous fermez le tag ...

<form:errors path="*" /> 

... alors vous obtenez l'erreur de validation JSP maladroite. Si vous fermez le tag comme s'il y avait du contenu du corps ...

<form:errors path="*"></form:errors> 

Ensuite, l'erreur disparaît. Je dois faire un suivi avec un bug pour l'équipe de Ganymede.

1

Ceci est malheureusement un bogue connu, apparemment introduit dans le Service Release 1 de Ganymede (Eclipse Ganymede SR1, v 3.4.1).

Voir les pages suivantes pour plus d'informations:

http://www.coderanch.com/t/106846/IDEs-Version-Control-other-tools/Ganymede-bug-using-jsp-include

http://www.eclipse.org/newsportal/article.php?id=17447&group=eclipse.webtools#17447

Le bug est corrigé dans WTP 3.0.3. Notez que pour obtenir le correctif via la fonction "Mises à jour logicielles" d'Eclipse, vous devez ajouter manuellement le site de mise à jour WTP à la liste des sites recherchés lors des mises à jour, en utilisant la fonction "Sites Maage ..." Site Webtools. Hm, j'ai mis à jour vers la 3.0.3, sans aucun effet.

1

Cela se passe principalement pour <% @ include file = "somefile.jsp"%> -style includes. Incroyablement frustrant - il est très difficile de trouver de vraies erreurs quand j'en ai plus de 300. Quelqu'un a-t-il de la chance de revenir à une version antérieure de WTP?

3

Je viens de lancer une mise à jour pour Software Updates-> Gynemede Update Site-> "Web et Java EE Development" et l'erreur semble disparaître.

+0

Il reste encore beaucoup à faire: https://bugs.eclipse.org/bugs/buglist.cgi?quicksearch=jsp – BalusC

Questions connexes