JSP-fejlretning: Sådan debugger JSP i Eclipse?
Hvad er fejlretning i JSP?
Debugging i JSP er processen til at spore fejlen i applikationen. Det er ikke særlig nemt at spore fejl og fejl i applikationen. JSP-applikationer er klientinteraktive. Derfor er fejl svære at genskabe.
JSP debugging teknikker
Der er 3 forskellige teknikker, hvorigennem vi kan fejlsøge en JSP-applikation:
- Brug af println-udsagn
- Ved brug af Java Logger
- Brug af Debugger-værktøjer
Brug af println Statements
System.out.println()bruges til at spore, om en bestemt del er udført eller ej.- Vi kan udskrive variablerne i koden.
- Vi kan også udskrive værdier, som skal bruges til at fejlfinde applikationen.
Eksempel:
I dette eksempel fejlsøger vi println-sætningerne for at forstå, hvilke værdier vi får for variablerne.
<%@ 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>
Forklaring af koden:
Kodelinje 10: Vi tager variabel num1 og initialiserer den til 10.
Kodelinje 11: Vi udskriver ved hjælp af println-udsagn om, at "Dette er debugging Guru JSP" for at debugge, hvilken linje kode der er blevet udført
Kodelinje 12: Her øger vi variablen num1 med 1.
Kodelinje 13: vi dividerer num1 med 0 og indsætter i en ny variabel num2.
Kodelinje 14: Da vi ønsker at kende værdien for num2, kan vi hente ved hjælp af println-sætningen for at vide, indtil hvilken linje kode der er blevet udført.
Når du udfører ovenstående kode, får du følgende output:
Output:
Her får vi udsagnet "Dette er debugging Guru JSP" med værdien af variablen num1, som er blevet forøget og dermed 11.
Ved brug af Java Logger
- Java logningsramme bruges til logningstjenester for enhver klasse, der kører ind FMV.
- Dette bruges til at logge enhver information fra koden.
- Det logger alle nødvendige oplysninger for at spore de fejl, der er opstået.
Eksempel:
I dette eksempel bruger vi java logger til at spore informationen i koden. Meddelelser kan vises ved hjælp af forskellige funktioner som f.eks severe(), warning(), info(), config(), Fine(). Info bruges til at vise oplysningerne i logfilen. Alvorlig bruges til at vise nogle alvorlige oplysninger på logfilen.
<%@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>
Forklaring af koden:
Kodelinje 2: Vi importerer java-loggeren for at logge oplysningerne.
Kodelinje 3: Vi importerer Dato-klassen for util-pakken
Kodelinje 13: Vi initialiserer loggerklassen ved at bruge getLogger-metoden.
Kodelinje 14: Vi initialiserer datoklassen.
Kodelinje 15: vi bruger info-metoden for logger-klasseobjekt til at udskrive den aktuelle dato.
Kodelinje 16: Vi bruger info-metoden til at udskrive 'This is Guru Logging debugger'.
Når du udfører ovenstående kode, får du følgende output
Output:
Vi får outputtet i std.log, som vil gemme i Logging-mappen på serveren. Her får vi den information, som er skrevet i koden.
Brug af fejlfindingsværktøjer
Vi har brugt eclipse siden begyndelsen af selvstudiet. I Eclipse, vi har fejlfindingsværktøjer til at debugge fejlene eller fejlene i koden.
Sådan fejlretter du JSP i Eclipse
Her er trinene til at fejlsøge en JSP-applikation i Eclipse ved hjælp af fejlfindingsværktøjer:
- Indstil brudpunktet
- Genstart serveren i fejlfindingstilstand
- Fejlfinding gennem brudpunkter
Trin 1) Indstil brudpunktet
Vi kan indstille brudpunktet i koden, hvor vi ønsker at spore 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>
Her sætter vi brudpunktet som 'skift brudpunkt', når du højreklikker på projektudforskeren. Vi kan indstille de brudpunkter, hvor fejlen eller fejlen opstår. Når de er indstillet, vil debuggeren flytte til det første brudpunkt og derefter det næste og så videre. Det vil køre gennem applikationen ved hjælp af brudpunkter. Efter at have indstillet brudpunktet, skal vi genstarte serveren i fejlretningstilstand.
Trin 2) Genstart serveren i fejlfindingstilstand
Vi kan genstarte serveren i debugging ved at klikke på serversiden og klikke på start i debug mode.
Trin 3) Fejlfinding gennem Breakpoints
Vi kan debug applikationen ved at klikke på applikationen som debug som:
Du får en advarsel om at skifte perspektiv og derefter klikke på knappen "Ja". Efter at have klikket på 'ja'-knappen får vi følgende perspektiv:
Vi får fanen variabler, hvor vi kan se værdier af variablerne:
Fanen breakpoints viser antallet af breakpoints i koden:
Vi kan fejlsøge applikationen gennem de brudpunkter, der er indstillet.
Resumé
- Debugging i JSP er processen til at spore fejlen i applikationen.
- JSP-fejlretningsteknikker: Brug af
printlnudsagn, ved hjælp af Java Logger og brug af Debugger-værktøjer System.out.println()bruges til at spore, om en bestemt del er udført eller ej.- Java logningsramme bruges til logningstjenester for enhver klasse, der kører i JVM.
- I eclipse har vi fejlfindingsværktøjer til at debugge fejlene eller fejlene i koden.







