在java servlet中,如何判断当前请求是否来自include?

时间:2010-03-14 23:20:15

标签: java servlets

在servlet中,如何判断RequestDispatcher("").include是否正在调用servlet,还是正常调用它?

2 个答案:

答案 0 :(得分:3)

应该有一堆请求属性,列在这里:

http://www.caucho.com/resin-3.0/webapp/faq.xtp#forward-path

例如,如果包含正在进行中,request.getAttribute("javax.servlet.include.request_uri")应返回非空值。

答案 1 :(得分:0)

我不确定您是否可以直接在请求对象中告知,但是您可以(在servlet 2.4+中)根据请求是一个请求,转发还是包含在您的Web中的声明来插入过滤器。 XML。

this developerworks article上描述了设置。

例如,您可以使用此技术拦截发往您感兴趣的URL的包含,并为您在servlet中看到的请求添加一个属性。