Come posso eseguire il debug di un JSP?

23

Sto provando a modificare un JSP per un progetto e sto ricevendo una NullPointerException da qualche parte nel JSP quando viene richiesta dal mio server.

Il mio server web (JBoss) sta segnalando l'eccezione, ma mi sta dando un numero di riga fasullo. Sta segnalando che l'eccezione si è verificata nella riga 702, ma il mio JSP è lungo solo 146 righe, quindi non sono in grado di identificare quale linea sta soffocando.

Quali sono alcune buone tecniche per il debug degli errori in JSP? Sto usando IntelliJ 9 Ultimate come IDE.

Grazie

    
posta ampersandre 27.01.2011 - 17:39
fonte

2 risposte

28

Ci sono diverse opzioni che possono aiutarti:

  1. Questa risposta spiega in realtà come eseguire il debug di JSP in particolare: link . Non l'ho mai provato, quindi ho seguito i tre suggerimenti seguenti quando stavo usando JSP, JBoss e IntelliJ ...

  2. Ricorda che i JSP sono compilati in classi. Quando dice la riga 702, significa nella classe compilata. Se hai test.jsp , il nome della classe è probabilmente test_jsp , quindi apri la directory di lavoro di JBoss e cerca test_jsp.java (una volta trovata la directory giusta, vedrai che la struttura della directory corrisponde alla struttura della directory JSP) . Ogni volta che ho avuto un'eccezione JSP, ho potuto trovare la linea abbastanza facilmente e di solito abbinarla alla linea corrispondente nel JSP.

  3. I breakpoint funzionano bene nelle classi Java chiamate da un JSP. Quindi, forse puoi spostare il codice di script Java che hai nel tuo JSP in una classe e eseguire il debug dal punto di ingresso. In futuro puoi anche prendere l'abitudine di riorganizzare la tua logica in modo che la maggior parte di essa si trovi in una classe chiamata da JSP, e la JSP è semplice, diretta e, si spera, non prevede eccezioni. Questa è comunque una buona pratica.

  4. Ancora meglio, rimuovi tutta la (o quasi) logica Java nelle classi Java, lasciando JSP per i tag HTML e JSP. So che questo non è fattibile subito, ma ancora una volta, è una buona idea a lungo termine evitare problemi come questo.

risposta data 27.01.2011 - 17:51
fonte
-1

È possibile eseguire il debug di una pagina JSP facilmente come un codice java:
"un file JSP è lo stesso del debug di una classe Java, ma la maggior parte delle funzionalità (Watch, Inspect, ecc.) non sono implementate. L'unico modo per ottenere i valori delle variabili è la vista Variabili.

Vedi il link sottostante:
link

    
risposta data 06.05.2016 - 09:39
fonte

Leggi altre domande sui tag