Latest web development tutorials

depuración JSP

Para probar / depurar una JSP o servlet programa es siempre tan difícil. procedimientos JSP y servlets tienden a implicar interacción entre un gran número de cliente / servidor, que es susceptible de generar un error, y es difícil de reproducir el entorno de error.

A continuación se le dará algunos consejos y sugerencias para ayudarle a depurar el programa.


Utilizar System.out.println ()

System.out.println () puede fácilmente se se ejecuta la bandera de una pieza de código. Por supuesto, también podemos imprimir una variedad de valores. Además:

  • Puesto que el objeto del sistema se convierte en el objeto de Java central que puede ser utilizado en cualquier lugar sin la introducción de clases adicionales. Incluyendo el uso de servlets, JSP, RMI, EJB, las habas, las clases y las aplicaciones independientes.
  • En comparación con paradas en el punto de interrupción, utilizando la salida System.out no tendrá un impacto significativo en el funcionamiento de las aplicaciones de proceso, esta característica es muy importante en el mecanismo de sincronización de la aplicación es muy útil.

A continuación, dado el System.out.println sintaxis () es:

System.out.println("Debugging message");

Este es un simple ejemplo de uso de System.out.print () es:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head><title>System.out.println</title></head>
<body>
<c:forEach var="counter" begin="1" end="10" step="1" >
   <c:out value="${counter-5}"/></br>
   <% System.out.println( "counter= " + 
                     pageContext.findAttribute("counter") ); %>
</c:forEach>
</body>
</html>

Ahora, si ejecuta el ejemplo anterior, entonces se producirá el siguiente resultado:

-4
-3
-2
-1
0
1
2
3
4
5

Si está utilizando el servidor Tomcat, usted será capaz de encontrar más de los siguientes en el archivo stdout.log logs en:

counter=1
counter=2
counter=3
counter=4
counter=5
counter=6
counter=7
counter=8
counter=9
counter=10

El uso de este método de variables y otra información se puede emitir en el registro de sistema para analizar el problema y encontrar la causa de las razones profundas.


Utilizar JDB Logger

marco de registro J2SE proporciona servicios de registro para cualquier clase en curso en la JVM. Así que podemos utilizar este marco para grabar cualquier información.

Vamos a reescribir el código anterior, utilizar la API de registrador de JDK:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@page import="java.util.logging.Logger" %>

<html>
<head><title>Logger.info</title></head>
<body>
<% Logger logger=Logger.getLogger(this.getClass().getName());%>

<c:forEach var="counter" begin="1" end="10" step="1" >
   <c:set var="myCount" value="${counter-5}" />
   <c:out value="${myCount}"/></br>
   <% String message = "counter="
                  + pageContext.findAttribute("counter")
                  + " myCount="
                  + pageContext.findAttribute("myCount");
                  logger.info( message );
   %>
</c:forEach>
</body>
</html>

Es similar a los resultados de la anterior, pero se puede obtener información adicional en el archivo de stdout.log. Aquí se utiliza el método de información del registrador. A continuación damos un archivo de instantánea stdout.log:

24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=1 myCount=-4
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=2 myCount=-3
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=3 myCount=-2
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=4 myCount=-1
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=5 myCount=0
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=6 myCount=1
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=7 myCount=2
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=8 myCount=3
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=9 myCount=4
24-Sep-2013 23:31:31 org.apache.jsp.main_jsp _jspService
INFO: counter=10 myCount=5

Los mensajes pueden enviarse usando una variedad de prioridad, mediante el uso de Sever (), advertencia (), información (), config (), bien (), más fino (), el método más fino (). mejor método () se utiliza para registrar la mejor información, y cortar () método se utiliza para registrar la información más grave.

Utilice Log4J mensajes logs marco en un archivo diferente, estos mensajes en función de la gravedad e importancia de clasificar.


Herramientas de depuración

NetBeans es una estructura de árbol, de código abierto de Java entorno de desarrollo integrado, apoyar el desarrollo de aplicaciones Java autónomas y las aplicaciones de red, sino también el apoyo depuración de JSP.

NetBeans es compatible con los siguientes algunas características básicas de depuración:

  • Los puntos de interrupción
  • seguimiento de un solo paso
  • punto de observación

La información detallada se puede ver el manual de NetBeans.


Utilizar JDB depurador

Puede utilizar el comando jdb en JSP y servlets en la depuración, al igual que de depuración como una aplicación normal.

Por lo general, nos dirigimos depuración sun.servlet.http.HttpServer de objetos para ver la situación HttpServer aplicación de JSP / Servlets en respuesta a las peticiones HTTP. Esto es muy similar a los applets de depuración. La diferencia es que, el programa de applets depuración real es sun.applet.AppletViewer.

La mayor parte del depurador cuando los applets de depuración se puede ignorar de forma automática algunos de los detalles, porque sabe cómo depurar applets. Si desea depurar objetos JSP transferidos al cuerpo, lo que necesita hacer dos cosas:

  • Configuración de la ruta de clases depurador, que se puede encontrar sun.servlet.http.Http-Server y clases relacionadas.
  • Configuración de la ruta de clases depurador, para que pueda encontrar los archivos JSP y clases relacionadas.

Conjunto ruta de clase, comenzó la puesta en sun.servlet.http.Http-servidor. Puede establecer puntos de interrupción en el archivo JSP en cualquier lugar, siempre y cuando te gusta, y luego usar el navegador envía una petición al servidor debe ser capaz de ver el programa se detuvo en un punto de ruptura.


utilice comentarios

anotaciones de programa al depurador juegan un papel muy útil en muchos aspectos. Los comentarios se pueden utilizar de muchas maneras en el depurador.

JSP utiliza anotaciones Java. Si un insecto desapareció, por favor revise cuidadosamente los comentarios que acabamos de pasar el código por lo general se puede averiguar por qué.


El jefe de los módulos de cliente y servidor

A veces, cuando el JSP no está funcionando de una manera predeterminada cuando se ven las peticiones HTTP primas y las respuestas también son útiles. Si la estructura es muy familiarizados con HTTP, se puede observar directamente las cabeceras de petición y respuesta y ver cómo los módulos en el final.


importantes técnicas de depuración

Aquí se nos reveló de nuevo dos sugerencias de depuración JSP:

  • Usando el navegador muestra el contenido original de la página, se utiliza para distinguir si el formato. Esta opción es por lo general en el menú Ver.
  • Asegúrese de que el navegador cuando la recarga forzada la página no captura la salida de la solicitud anterior. Si está utilizando el navegador Netscape Navigator, utilice Shift-Reload; si se utiliza el navegador Internet Explorer, a continuación, utilizar Shift-Actualizar.