Debug JSP: come eseguire il debug di JSP in Eclipse?

โšก Riepilogo intelligente

Il debug in JSP รจ il processo di tracerrori di debug in un'applicazione JSP. Questa risorsa spiega tre tecniche di debug: le istruzioni println, Java Strumenti di logging e debugging, e spiegazioni dettagliate su come eseguire il debug di una pagina JSP in Eclipse Utilizzo di breakpoint e modalitร  debug.

  • ๐Ÿž Definizione: Debug tracerrori difficili da riprodurre nelle applicazioni JSP interattive lato client.
  • ๐Ÿ–จ๏ธ println: System.out.println() stampa i valori delle variabili per confermare quali righe di codice sono state eseguite.
  • ๐Ÿ“ Java Registratore: Il sistema di registrazione dei log memorizza i messaggi classificati come info e severe nei file di log.
  • ๐Ÿ”ง Strumenti di debug: Eclipse Fornisce punti di interruzione e una vista delle variabili per ispezionare lo stato di runtime.
  • โ–ถ ๏ธ Eclipse Passi: Imposta dei breakpoint, riavvia il server in modalitร  debug, quindi esegui il codice passo passo.

Debug JSP

Cos'รจ il debug in JSP?

Il debug in JSP รจ il processo di tracindividuando l'errore nell'applicazione. Non รจ molto facile tracbug ed errori nell'applicazione. Le applicazioni JSP sono interattive con il client. Pertanto, gli errori sono difficili da riprodurre.

Tecniche di debug JSP

Esistono 3 diverse tecniche attraverso le quali possiamo eseguire il debug di un'applicazione JSP:

  • Utilizzo delle istruzioni println
  • utilizzando Java Logger
  • Utilizzo degli strumenti di debug

Utilizzo delle istruzioni println

  • System.out.println() รจ utilizzato per trace se una determinata parte viene eseguita o meno.
  • Possiamo stampare le variabili nel codice.
  • Inoltre, possiamo stampare i valori necessari per il debug dell'applicazione.

Esempio:

In questo esempio, stiamo eseguendo il debug delle istruzioni println per capire quali valori stiamo ottenendo per le variabili.

<%@ 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>

Spiegazione del codice:

Code Linea 10: Prendiamo la variabile num1 e la inizializziamo a 10.

Code Linea 11: Stiamo stampando, utilizzando l'istruzione println, "Questo รจ un debug Guru "JSP" per eseguire il debug di quale riga di codice รจ stata eseguita.

Code Linea 12: Qui stiamo incrementando la variabile num1 di 1.

Code Linea 13: Stiamo dividendo num1 per 0 e assegnando il risultato a una nuova variabile, num2.

Code Linea 14: Poichรฉ vogliamo conoscere il valore di num2, possiamo recuperarlo utilizzando l'istruzione println per sapere fino a quale riga di codice รจ stata eseguita.

Quando esegui il codice sopra, ottieni il seguente output:

Debug JSP utilizzando le istruzioni println

Produzione:

Qui otteniamo l'affermazione "Questo รจ il debug Guru JSPโ€ con il valore della variabile num1, che รจ stato incrementato, quindi 11.

utilizzando Java Logger

  • Migliori Java Il framework di logging viene utilizzato per registrare i servizi per qualsiasi classe in esecuzione nel JVM.
  • Viene utilizzato per registrare qualsiasi informazione dal codice.
  • Registra tutte le informazioni necessarie per trace i bug che si sono verificati.

Esempio:

In questo esempio, stiamo usando il Java registro per trace le informazioni nel codice. I messaggi possono essere mostrati utilizzando diverse funzioni come severe(), warning(), info(), config()e fine(). Info viene utilizzato per visualizzare le informazioni contenute nel file di registro. Severe viene utilizzato per visualizzare informazioni gravi presenti nel file di registro.

<%@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>

Spiegazione del codice:

Code Linea 2: Stiamo importando il Java logger per registrare le informazioni.

Code Linea 3: Stiamo importando la classe Date del pacchetto util.

Code Linea 13: Stiamo inizializzando la classe logger utilizzando il metodo getLogger.

Code Linea 14: Stiamo inizializzando la classe Date.

Code Linea 15: Utilizziamo il metodo info dell'oggetto della classe logger per stampare la data corrente.

Code Linea 16: Stiamo usando il metodo info per stampare 'Questo รจ Guru Registrazione del debugger.

Eseguendo il codice sopra riportato, otterrai il seguente output:

Utilizzo del debug JSP Java Logger

Produzione:

L'output verrร  visualizzato nel file std.log, che verrร  memorizzato nella cartella Logging sul server. Qui troveremo le informazioni scritte nel codice.

Utilizzo degli strumenti di debug

Abbiamo usato Eclipse dall'inizio del tutorial. In Eclipse, disponiamo di strumenti di debug per eseguire il debug di errori o bug nel codice.

Come eseguire il debug di JSP in Eclipse

Ecco i passaggi per eseguire il debug di un'applicazione JSP Eclipse utilizzando gli strumenti di debug:

  1. Imposta il punto di interruzione.
  2. Riavvia il server in modalitร  debug.
  3. Esegui il debug tramite punti di interruzione.

Passaggio 1) Impostare il punto di interruzione

Possiamo impostare il punto di interruzione nel codice, dove vogliamo trace il codice:

<%@ 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>

Qui impostiamo il breakpoint come "attiva/disattiva breakpoint" quando si fa clic con il pulsante destro del mouse su Esplora progetti. Possiamo impostare i breakpoint nel punto in cui si verifica l'errore o il bug. Una volta impostati, il debugger si sposterร  al primo breakpoint, poi al successivo e cosรฌ via. Eseguirร  l'applicazione tramite i breakpoint. Dopo aver impostato i breakpoint, รจ necessario riavviare il server in modalitร  debug.

Passaggio 2) Riavviare il server in modalitร  debug

Possiamo riavviare il server in modalitร  debug facendo clic sul lato server e selezionando "Avvia in modalitร  debug".

Eseguire il debug di JSP in Eclipse

Passaggio 3) Debug tramite punti di interruzione

รˆ possibile eseguire il debug dell'applicazione facendo clic sull'applicazione come "Debug As":

Eseguire il debug di JSP in Eclipse

Riceverai un avviso per cambiare prospettiva; quindi fai clic sul pulsante "Sรฌ". Dopo aver fatto clic sul pulsante "Sรฌ", otterremo la seguente prospettiva:

Eseguire il debug di JSP in Eclipse

Si aprirร  la scheda Variabili, dove sarร  possibile visualizzare i valori delle variabili:

Eseguire il debug di JSP in Eclipse

La scheda Punti di interruzione mostra il numero di punti di interruzione presenti nel codice:

Eseguire il debug di JSP in Eclipse

Possiamo eseguire il debug dell'applicazione tramite i breakpoint che sono stati impostati.

DOMANDE FREQUENTI

Sรฌ. Gli assistenti IA possono analizzare lo stack traces, individua puntatori nulli o errori di divisione e suggerisce correzioni nel codice JSP e servlet. Questo velocizza il debug, ma รจ necessario confermare la correzione eseguendo la pagina.

No. L'IA suggerisce le cause probabili, ma passoping attraverso punti di interruzione in Eclipse Fornisce comunque valori precisi delle variabili di runtime che confermano il problema effettivo. I due approcci funzionano al meglio se utilizzati insieme.

println stampa direttamente sulla console ed รจ difficile da gestire su larga scala. Un logger registra i messaggi classificati per livello, come info o severe, in file di log che possono essere filtrati, conservati e analizzati in seguito.

Un errore 500 deriva in genere da un'eccezione non gestita nella JSP, come una NullPointerException o una divisione per zero. La causa esatta รจ mostrata nei log del server e nello stack trace. trace.

Riassumi questo post con: