【发布时间】:2012-09-06 06:10:26
【问题描述】:
我有一个使用基本 jsp 和 servlet 的简单 Web 应用程序。 我有一个映射到 /* 的 servlet 过滤器。 我有一个配置为 index.jsp 的欢迎文件
<filter-mapping>
<filter-name>ObjectifyFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
...
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
我遇到的问题是,当对不存在的资源的请求并且在应用引擎上部署时应该返回 404 错误时,在尝试重复附加斜杠 + 欢迎文件时无休止地返回 302。
例如: 对http://myyapp.appspot.com/foo(没有为 foo 配置任何内容)的请求会产生以下结果:
在开发服务器上,这会返回预期的 404。如果我删除过滤器映射,它也会在应用引擎上返回 404。
这似乎相当基本,所以我猜我在某个地方遗漏了一些东西。有什么想法吗?
【问题讨论】:
-
你知道是谁在做重定向吗?单独的 Welcome-list-file 不会。
-
你使用这个过滤器只是为了用objectify注册类吗?
-
一定是缺少一些额外的信息。 ObjectifyFilter 不会发出任何类型的重定向(继续查看代码),也不会在没有特殊刺激的情况下使用 GAE。
-
我不知道重定向是什么。我假设它是一个应用引擎网络服务器/应用服务器。正如我所提到的,它在开发服务器上按预期在本地工作。
-
我也尝试了一个简单的过滤器,除了
chain.doFilter(request, response);什么都不做,并得到相同的结果。正如stickfigure 所提到的,ObjectifyFilter 并没有真正做太多事情,只是简单地传递东西。
标签: java google-app-engine objectify