2013-10-19 20:45
提问者采纳
1
|
因为这一块儿调用的是第三方jar包,而你没有引入第三方jar的源码,所以会出现source not found。 你可以下载对应jar的源码,然后跟jar包关联上,再调试的时候就可以了。
|
追问:
不是这个问题,我这里出现编译错误是因为我修改了代码,在没有出现编译错误时可以正常运行项目,然后调试,进不到方法体中,方法体的代码是自己写的,方法体所在的类继承了jar包提供的类。
追答:
1
|
出现编译错误时,运行时用的
class
是在上一次编译通过的代码,而当前代码跟运行时的代码不一致,当然也会出现找不到源码的问题。
|
追问:
我是在正常的情况下执行的,跟编译错误无关。我执行的时候没有任何错误,项目正常。编译错误只是我在截图时修改代码出现的,调试时之前的事情。
追答:
1
2
3
|
F5 不是要进入到方法里面然后逐步跟踪的么? 而
HttpSession session = messageContext.getHttpServletRequest().getSession(); 这行代码中调用的内容是第三方Jar中的,没有源码,你按f5自然跟踪不进去了。
|
追问:
getSession这个方法是自己写的一个类的方法,不是第三发jar包中的类。写的这个类只是继承了jar包中的一个类。我都说了,这个方法是自己写的代码。
追答:
先是调用messageContext的getHttpServletRequest()来获取HttpServletRequest对象的。 然后再调用HttpServletRequest对象中的getSession这个方法来获取Session。 其中getHttpServletRequest是你自己实现的? 还是HttpServletRequest也是用的你自己实现的?
追问:
messageContext.getHttpServletRequest()获取的类是自己写的,获取的是DefautHttpServletRequest,这个类是自己写的
追答:
1
|
你在getHttpServletRequest方法中加断点试试呢?
|
追问:
我现在试不了。需要周一去公司才行,谢谢了
-
提问者评价
-
谢谢!
评论(1)
3
0
2013-10-29 21:37
凌霜梅花