tomcat启动时,自动执行第一个Filter过滤器,而在Resin下是没有这种情况的,求解答。

小吱 发布于 2012/07/27 14:48
阅读 1K+
收藏 0

tomcat启动时,自动执行第一个Filter过滤器,而在Resin下是没有这种情况的,在网上找了好久都没有找到解决方法。

web.xml配置

<filter>
    <filter-name>ffilter</filter-name>
    <filter-class>com.hd.filter.FilterTest</filter-class>
</filter>

<filter-mapping>
    <filter-name>ffilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

加载中
0
小吱
小吱
是不是我问的问题太简单了?? 没人回答
0
元圈
元圈

filter并不是用来在tomcat启动时执行的啊,而是每次浏览器端请求进来时,会执行。
你想要tomcat启动的时候执行,应该要写一个ServletContextListener的实现类,然后配置到web.xml里。
不知道我理解得对不对。

小吱
小吱
现在我是想不让tomcat server start 的时候执行filter哦。因为我还没有通过url访问我的servlet,filter就执行了。
0
whaon
whaon
默认应该不会执行filter吧
0
情天大圣
情天大圣

你设置的url-pattern是/*,如果你在web.xml中有配置welcome-file为index.jsp之类的,那启动自然会执行此过滤器,可以将/*修改为/*.do或者/*.action或者你自己需要过滤的通配符。

0
小吱
小吱

引用来自“情天大圣”的答案

你设置的url-pattern是/*,如果你在web.xml中有配置welcome-file为index.jsp之类的,那启动自然会执行此过滤器,可以将/*修改为/*.do或者/*.action或者你自己需要过滤的通配符。

我的web.xml文件里面的确是有<welcome-file-list>列表,但是,我把它注释掉了,重启服务了,可是还是执行了。我在resin下也是这样的配置,start server时候并没有出现这样的情况。是否我哪里配置错误了?
0
hunterli
hunterli
filter执行了,说明就是有请求过来吧。在被执行的filter里面把ip及请求参数打印出来看看。
0
小吱
小吱

引用来自“hunterli”的答案

filter执行了,说明就是有请求过来吧。在被执行的filter里面把ip及请求参数打印出来看看。
非常奇怪的user-agent。。。这个怎么回事??

user-agent : Java/1.6.0_33
host : localhost:8081
accept : text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
connection : keep-alive
0
写个代码而已
同学,这个问题解决了吗
小吱
小吱
没有解决,我也不太清楚为什么。不过这个影响不大,而且我现在都转PHP做项目了。用NGINX+PHP-FPM,简单快捷。
返回顶部
顶部