2010-08-10 72 views
1

我遇到了一些我从未想过的事情,它困扰着我。混合静态HTML页面和JSP

我有一个使用servlet和JSP完成的网站。有一个auth机制运行良好,并且非常受欢迎。现在需要在同一个伞下添加包含静态HTML页面的静态目录。要求是这些页面不应该转换为JSP,我也应该使用与JSP相同的auth会话。换句话说,如果不使用与JSP站点相同的凭据进行身份验证,人们就无法访问静态页面。

我不知道如何做到这一点,因为如果过滤器只有一个JSP或servlet不是它,过滤器才会出现?我也不希望在WebServer中为这个目录进行特殊配置,因为这会让它超出我尝试使用的原始auth会话的范围。

任何关于如何实现这一目标的指针?

感谢, - 帕乌

+0

您的'静态页面'是如何提供的?通过Apache? – 2010-08-10 23:09:35

回答

2

我不知道怎么和这样做,因为仅过滤进入画面如果它的JSP或Servlet是不是?

这是不正确的。如果这些文件由相同的webapp/servletcontainer提供,那么您可以完美地使用Filter。无论目标类型如何,他们都会拦截与指定的url-pattern匹配的各种请求。只要让它听取匹配静态内容的url-pattern即可。例如。 /static/*从而将所有静态内容放在名为/static的文件夹中。或者如果您已经有Filter/*上收听,它也会被调用。

+0

这是很好的信息。一个servlet过滤器可以做你需要的。 – 2010-08-10 23:19:04

+0

谢谢!这以最好的方式解决了我的问题。 – user220201 2010-08-11 00:37:57

+0

不客气:) – BalusC 2010-08-11 00:44:29