JSP Debugging: Hur man felsöker JSP i Eclipse?

Vad är felsökning i JSP?

Felsökning i JSP är processen för att spåra felet i applikationen. Det är inte särskilt lätt att spåra buggar och fel i applikationen. JSP-applikationer är klientinteraktiva. Därför är fel svåra att återskapa.

JSP-felsökningstekniker

Det finns tre olika tekniker genom vilka vi kan felsöka en JSP-applikation:

  • Använda println-satser
  • Använda Java logger
  • Använda felsökningsverktyg

Använda println Statements

  • System.out.println() används för att spåra om en viss del exekveras eller inte.
  • Vi kan skriva ut variablerna i koden.
  • Vi kan också skriva ut värden som måste användas för att felsöka applikationen.

Exempelvis:

I det här exemplet felsöker vi println-satserna för att förstå vilka värden vi får för variablerna.

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Debug Guru JSP</title>
</head>
<body>
<% int num1=10;
System.out.println("This is debugging Guru JSP");
num1++;
int num2=num1/0;
System.out.println(num2);%>
</body>
</html>

Förklaring av koden:

Kodrad 10: Vi tar variabel num1 och initierar den till 10.

Kodrad 11: Vi skriver ut med hjälp av println-satser att "Detta felsöker Guru JSP" för att felsöka vilken kodrad som har körts

Kodrad 12: Här ökar vi variabeln num1 med 1.

Kodrad 13: vi dividerar num1 med 0 och lägger till en ny variabel num2.

Kodrad 14: Eftersom vi vill veta värdet för num2 kan vi hämta med hjälp av println-satsen för att veta till vilken rad kod som har exekveras.

När du kör ovanstående kod får du följande utdata:

JSP-felsökning med hjälp av println-satser

Produktion:

Här får vi uttalandet "Detta är att felsöka Guru JSP" med värdet på variabeln num1 som har ökats därav 11.

Använda Java logger

  • Smakämnen Java loggningsramverk används för loggningstjänster för alla klasser som körs in JVM.
  • Detta används för att logga all information från koden.
  • Den loggar all nödvändig information för att spåra de buggar som har inträffat.

Exempelvis:

I det här exemplet använder vi javalogger för att spåra informationen i koden. Meddelanden kan visas med olika funktioner som t.ex severe(), warning(), info(), config(), Fine(). Info används för att visa informationen i loggfilen. Severe används för att visa allvarlig information i loggfilen.

<%@taglib prefix="guru" uri="http://java.sun.com/jsp/jstl/core" %>
<%@page import="java.util.logging.Logger" %>
<%@page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Debugging Guru JSP</title>
</head>
<body>
<% Logger logger=Logger.getLogger(this.getClass().getName());%>
<% Date dt = new Date();
logger.info(dt.toString());
logger.info("This is Guru Logging debugger"); %>
</body>
</html>

Förklaring av koden:

Kodrad 2: Vi importerar javaloggern för att logga informationen.

Kodrad 3: Vi importerar Date class för util-paketet

Kodrad 13: Vi initierar loggerklassen genom att använda getLogger-metoden.

Kodrad 14: Vi startar datumklassen.

Kodrad 15: vi använder infometoden för logger class object för att skriva ut det aktuella datumet.

Kodrad 16: Vi använder informationsmetoden för att skriva ut "Detta är Guru Logging debugger".

När du kör ovanstående kod får du följande utdata

JSP-felsökning med hjälp av Java logger

Produktion:

Vi kommer att få utdata i std.log, som kommer att lagras i Logging-mappen på servern. Här får vi informationen som har skrivits i koden.

Använda felsökningsverktyg

Vi har använt Eclipse sedan början av handledningen. I förmörkelse, vi har felsökningsverktyg för att felsöka felen eller buggarna i koden.

Hur man felsöker JSP i Eclipse

Här är stegen för att felsöka en JSP-applikation i Eclipse med hjälp av felsökningsverktyg:

  1. Ställ in brytpunkten
  2. Starta om servern i felsökningsläge
  3. Felsök genom brytpunkter

Steg 1) Ställ in brytpunkten

Vi kan ställa in brytpunkten i koden, där vi vill spåra koden:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Debugging Guru JSP</title>
</head>
<body>
<% String name = "This is test Guru JSP";
out.println(name);
%>
</body>
</html>

Här ställer vi in ​​brytpunkten som "växla brytpunkt" när du högerklickar på projektutforskaren. Vi kan ställa in brytpunkterna där felet eller buggen inträffar. När de väl är inställda kommer debuggern att flytta till den första brytpunkten och sedan nästa och så vidare. Det kommer att köras genom applikationen med hjälp av brytpunkter. Efter att ha ställt in brytpunkten måste vi starta om servern i felsökningsläge.

Steg 2) Starta om servern i felsökningsläge

Vi kan starta om servern i felsökning genom att klicka på serversidan och klicka på start i felsökningsläge.

Felsöka JSP i Eclipse

Steg 3) Felsök genom brytpunkter

Vi kan felsöka applikationen genom att klicka på applikationen som felsökning som:

Felsöka JSP i Eclipse

Du får en varning om att byta perspektiv och klicka sedan på knappen "Ja". Efter att ha klickat på "ja"-knappen får vi följande perspektiv:

Felsöka JSP i Eclipse

Vi kommer att få upp fliken variabler, där vi kan se värden på variablerna:

Felsöka JSP i Eclipse

Brytpunktersfliken visar antalet brytpunkter i koden:

Felsöka JSP i Eclipse

Vi kan felsöka applikationen genom de brytpunkter som har ställts in.

Sammanfattning

  • Felsökning i JSP är processen för att spåra felet i applikationen.
  • JSP-felsökningstekniker: Använda println uttalanden, Använda Java Logger och använda felsökningsverktyg
  • System.out.println() används för att spåra om en viss del exekveras eller inte.
  • Smakämnen Java loggningsramverk används för loggningstjänster för alla klasser som körs i JVM.
  • I eclipse har vi felsökningsverktyg för att felsöka felen eller buggarna i koden.