这是stacktrace:
...
org.apache.jsp.showcustomer_jsp._jspService(showcustomer_jsp.java:128)
org.apache.jasper.runtime.HttpJspBase.service(Unknown Source)
这就是我的所作所为:
showcustomer_jsp.java
文件(查看/var/run/tomcat-6/Catalina/localhost/_/org/apache/jsp
并不是很明显。).jsp
文件中搜索_jsp.java
文件中第128行找到的内容。拜托,有更简单的方法吗?
答案 0 :(得分:4)
我在Eclipse WTP FAQ上找到了这个page,它解释了如何配置Eclipse,以便你可以点击堆栈跟踪转到生成的java代码。
答案 1 :(得分:2)
我认为你不能。 JSP文件被编译为servlet,不直接运行。当从这个servlet抛出异常时,堆栈跟踪中的行就是类中的行。此时JSP中的原始行已丢失。
通常最好避免从jsp编写代码或抛出异常,并将您的逻辑封装在servlet和JSP标记中,并使用JSTL作为控制流(if,forEach等)
答案 2 :(得分:0)
我曾经在Lex和Yacc中编程生成C代码,你可以启用#line预处理器指令进行调试。当生成的c代码中发生了某些事情时,IDE就足够智能打开相应的lex或yacc文件,而不是生成的c代码。切切实实