son - ¿Dónde se compilan los archivos JSP Java(*__ jsp.java)?
que son jsp en java (6)
Recibo una javax.servlet.jsp.JspException
en uno de los archivos jsp que mi sitio web está intentando procesar ( survey.jsp
). Sin embargo, el seguimiento de pila no me proporciona la línea específica en jsp donde falla, sino el número de línea donde falla ( survey_jsp.java:787
), que parece ser el archivo compilado JSP. ¿Dónde encuentro esos archivos, para saber qué línea está arrojando esta excepción?
Gracias
EDITAR: estos archivos viven en el directorio /work
si está usando tomcat como se sugiere en el comentario a continuación.
C: / Users / ADMIN / eclipse-workspace.metadata.plugins / org.eclipse.wst.server.core / tmp0 / work / Catalina / localhost / JspDemo / org / apache / jsp
cambiar el enlace de acuerdo con su nombre de proyecto.
En mi caso, jsps compilados estaban bajo
/var
|--cache
|-- tomcat8
|--Catalina
|--localhost
|--projectname
|-- (etc...)
Estoy usando Intellij
para aprender JavaEE y para ver algunas funciones cuando jsp se traduce a servlet, también tengo que encontrar el archivo.
No lo encontré más abajo <tomcat_home>/work/*
. Finalmente encuentro que el archivo está bajo la ~/.IntelliJIdea15/system/tomcat/
(estructura de árbol que muestra desde ~/.IntelliJIdea15/system/tomcat/
)!
Name related to project name
|-- conf
|-- logs
`-- work
`-- Catalina
`-- localhost
`-- projectname and type
`-- org
`-- apache
`-- jsp
|-- survey_jsp.class
`-- survey_jsp.java <--- here
Si todavía no puede encontrarlo en la carpeta de inicio de Intellij, es posible que deba intentar usar
find . | grep ''nameOfYourJsp_jsp.java''
en la carpeta padre adecuada.
Los archivos compilados JSP están disponibles por defecto en la carpeta /work
del entorno Tomcat. Debería haber una subcarpeta Catalina
que a su vez tiene una subcarpeta que representa el nombre de dominio que por defecto es localhost
. A su vez, debería ser la carpeta del proyecto que a su vez contiene la jerarquía de paquetes org.apache.jsp
con los archivos JSP compilados.
Tomcat
|-- backup
|-- bin
|-- conf
|-- lib
|-- logs
|-- temp
|-- webapps
`-- work
`-- Catalina
`-- localhost
`-- projectname
`-- org
`-- apache
`-- jsp
|-- survey_jsp.class
`-- survey_jsp.java <--- here
Sin relación con el problema concreto, debe haber una causa raíz en el stacktrace de la JspException
que generalmente contiene más detalles sobre la causa raíz real del problema. Lee un poco más en la stacktrace. Por cierto, ¿sabes que poner código Java sin formato en archivos JSP se considera una mala práctica ? Hace que los problemas sean más difíciles de depurar a medida que te encuentras ahora.
Si la página no se compiló, debería encontrarla en algún lugar debajo de <tomcat>/work/*
. La ruta completa depende de tu entorno. Si no puede encontrarlo allí, debe iniciar su Tomcat en modo de depuración, definitivamente mantiene los archivos .java
no compilados (Tomcat 7).
del documento del oráculo
javax.servlet.jsp.JspException :: Una excepción genérica conocida por el motor JSP; las JspExceptions no detectadas darán lugar a una invocación de la maquinaria de página de error.
incluso solía obtener esto cada vez que usaba scriplets en mi código
Mi consejo: no use scripltes, incluso podría parecer que desarrolla código fácilmente, pero con todos los respetos, es un gran problema: mantener un código de scriplets. CRÉEME