java filter 404,UrlRewriteFilter run元素产生404,但元素在GAE / Java上工作正常

I'm using the UrlRewriteFilter library in order to avoid having to write my own url filter.

I'm pretty sure that I have things set up properly, because when I have this in my url rewrite xml:

^/urlIWantToMap

/WhereIWouldLikeItToGo

It seems to work fine (as in, hitting http://localhost:8080/urlIWantToMap sends me to the intended location). Note that I had to add the servlet mapping to my web.xml.

If I try this though...

^/urlIWantToMap

I get an http 404. I think it is the same kind of problem described here (even though I'm suspicious on the solution/resolution the author comes to):

I can see this happening if there were some kind of change to web filter behavior that would inhibit UrlRewriteFilter from calling into the servlet. Either that; or I'm making a blatant mistake I'm not seeing.

解决方案

Do you see something like this when the application server starts?

INFO: org.tuckey.web.filters.urlrewrite.Run ERROR: could not find method with the name doGet on mypackage.MyServletClass

Even if you don't, does a public method doGet exist without any parameters? In my case it was protected, and while http://localhost:8080/MyProject/rewrite-status told me everthing was fine, I still got a 404.

I had to create a wrapper method to make doGet public and configure urlrewrite.xml like this:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值