Estou tentando editar um JSP para um projeto e estou recebendo uma NullPointerException em algum lugar do JSP quando solicitado do meu servidor.
Meu servidor web (JBoss) está relatando a exceção, mas está me dando um número de linha falso. Está relatando que a exceção aconteceu na linha 702, mas meu JSP tem apenas 146 linhas, portanto, não consigo identificar qual linha está sufocada.
Quais são algumas boas técnicas para depurar erros em JSPs? Estou usando o IntelliJ 9 Ultimate como meu IDE.
obrigado
Respostas:
Existem várias opções que podem ajudá-lo:
Esta resposta realmente explica como depurar JSPs especificamente: /programming/33739/jsp-debugging-in-intellij-idea . Eu nunca tentei isso, então segui as próximas três sugestões quando estava usando JSP, JBoss e IntelliJ ...
Lembre-se de que JSPs são compilados em classes. Quando diz a linha 702, significa na classe compilada. Se você tiver
test.jsp
, o nome da classe provavelmente étest_jsp
, então abra seu diretório de trabalho do JBoss e procuretest_jsp.java
(depois de encontrar o diretório certo, você verá que a estrutura de diretórios corresponde à sua estrutura de diretórios JSP). Sempre que eu tinha uma exceção JSP, era possível encontrar a linha com bastante facilidade e, geralmente, correspondê-la à linha correspondente no JSP.Os pontos de interrupção funcionam bem em classes Java chamadas de um JSP. Portanto, talvez você possa mover o código de script Java que você possui em seu JSP para uma classe e depurar a partir do ponto de entrada. No futuro, você também poderá criar o hábito de reorganizar sua lógica, para que a maioria esteja em uma classe que está sendo chamada pelo JSP, e o JSP é simples, direto e, esperançosamente, não gera exceções. Esta é uma boa prática de qualquer maneira.
Melhor ainda, remova toda (ou praticamente toda) a lógica Java nas classes Java, deixando JSPs para tags HTML e JSP. Sei que isso não é viável imediatamente, mas, novamente, é uma boa idéia, a longo prazo, evitar problemas como esse.
fonte
*_jsp.java
aulas.Você pode depurar uma página JSP facilmente como um código java:
"um arquivo JSP é o mesmo que depurar uma classe Java, mas a maioria dos recursos (Watch, Inspecionar etc.) não é implementada. A única maneira de obter os valores das variáveis é a visualização Variáveis ".
Veja o link abaixo:
https://www.laliluna.de/articles/posts/debugging-jsp-java-tutorial.html
fonte