在调试 JSP 时,哪些变量可以使用?

4

我目前正在尝试通过调试JSP来查找由拦截器传递而来的神秘变量的值,因为我无法附加源代码到拦截器中,所以无法通过调试拦截器。

我阅读了许多文章,称在调试JSP时很难找到可用的变量,但不幸的是,这可能是我解决问题的唯一方法之一。

有没有人知道任何详细介绍JSP变量结构的文章,或更具体地说,存储这些值的对象是什么?

顺便说一句,我正在使用Eclipse进行开发/调试。

2个回答

1

对于模糊的问题,我只能提供一些模糊的答案:

隐式对象:

  • 响应
  • 请求

从这些对象中,你可以推导出 cookies 和 session 变量。这是你想问的吗?


嗯,也许可以...例如,假设我有一个标签,像<s:iterator value="somelist">,那么在变量堆栈中是否有地方可以看到变量"somelist"的实际值?我想我成功找到了页面中实际的标签,但没有它们关联的值。 - kand
所以这真的取决于您的应用服务器环境。当您拥有一个标签库(正如您所看到的)时,您还将拥有配置XML文件,这些文件指定了哪个类处理哪个标签。从那里,您可以调试并确定从特定标记获取所需结果所需的变量,参数和参数。关于特定标记,您需要参考您的应用服务器或Web应用程序API,以确定如何正确配置和编辑这些标记委派。 - Brandt Solovij

1

你的容器是否兼容JSR-45(据我记得是JSR编号)?如果是,你可以将IDE附加到它上面以调试JSP,不过有时候很难找到变量。


我可以使用Eclipse在我的JSP中设置断点,但是有许多具有深度的变量,所以我不知道该从哪里查找可以在JSP中访问的变量。 - kand

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接