2009-11-24 18 views
5

Mi sistema: Ubuntu 9.10. Eclipse 3.5.1 con Java EE 1.2.1 (instalación manual - NO desde la sináptica). Herramientas para desarrolladores web 3.1.1JSP EL (Expression Language) causando problemas en Eclipse

Recientemente adopté el código de otra persona (un proyecto web dinámico) y me encontré con muchos errores, advertencias y resaltado de sintaxis incorrecto en Eclipse. Yo he reducido a estas 4 líneas de código (crear un nuevo proyecto Web dinámico, y luego una nueva página JSP y poner esto en el cuerpo):

${(1<2)? "" : "no"} 
<%for (int i = 0; i < 5; i++) {%> 
<div>${5}</div> 
<%}%> 

Errores/Advertencias/resaltado de sintaxis incorrecta

línea 1: línea de advertencia amarillo bajo '<': carácter no válido utilizado en cadena de texto ($ {(1 < 2) "sí": "no"}).

line2: línea de error rojo bajo 'f': anotaciones múltiples que se encuentran en esta línea: 1) error de sintaxis, inserte "último" para completar TryStatement. 2) Error de sintaxis, inserte "}" para completar ClassBody

línea 2: línea de error rojo bajo ')': Error de sintaxis en el token ")", trate de espera después de esta señal

línea 3: línea de advertencia amarillo bajo ' div ': etiqueta sin final (/ div).

línea 3: línea de advertencia amarillo bajo '<' del div de cierre: Anotaciones múltiples encontrar en esta línea: 1) Carácter no válido utilizado en cadena de texto ($ {5} <%}%>). 2) Carácter no válido utilizado en la cadena de texto ($ {5} <%}%>).

línea 3: '/ div' es negro y púrpura en vez de verde para el código HTML

line4 (para el código scriptlet?): La apertura y cierre etiquetas scriplet '<%' y '%>' son de color negro en vez de naranja

La página funciona como se esperaba en un navegador: obtiene '5' cinco veces. Si cambia las comillas vacías en la línea 1 a "sí", guárdelas, cierre el archivo en el editor, haga clic en él en el explorador de proyectos> validar, luego vuelva a abrirlo: desaparecerán todos los errores/advertencias/resaltado de sintaxis incorrecta, excepto el primero (personaje inválido). Esto es increíblemente irritante. Cualquier pensamiento sería muy apreciado.

+0

Sí, el soporte del editor JSTL de Eclipse es basura. –

+0

¿Alguien más puede confirmar el mismo comportamiento (si crea un nuevo proyecto web dinámico y luego una nueva página JSP y coloca el código citado en el cuerpo html)? Es posible que deba guardar, cerrar, validar y volver a abrir para ver los errores/advertencias. Gracias. P.s. este es otro problema (probablemente relacionado); ¿Por qué los nuevos errores/advertencias solo aparecen si guardas, cierras, validas y vuelves a abrir el archivo? Lo hace algo inutilizable ... – jackocnr

Respuesta

13

Eclipse WTP es genial, pero exactamente este problema es un epic fail en Eclipse WTP para mí también. Parece que están trabajando en ello, pero hasta entonces sólo desactivo/set-a-ignoran todo de la validación en relación con esta materia en las preferencias de espacio de trabajo a través Web>JSP Archivos>Validación> lista de desplazamiento a muy abajo y establecer todas las configuraciones de validación EL para Ignorar. También en la preferencia Validación, desmarque todas las casillas de verificación relacionadas con JSP. Sin embargo, esto no parece eliminar cada advertencia/error, pero al menos minimiza la molestia.

IntelliJ IDEA maneja la validación de JSP/EL mucho mejor.

Para mí, los síntomas me hacen pensar que WTP está usando regexp en lugar de un analizador basado en pila para validar HTML/JSP/EL. Este es un big no-no en caso de marcado estructurado.

+0

Lo siento, no sé cómo enviar un mensaje privado. Por favor, mira los siguientes comentarios de respuesta. Según entiendo, apunta a tu blog. http://stackoverflow.com/a/22266892/2674303 – gstackoverflow

Cuestiones relacionadas