我可以将网站的welcome-file设置为Servlet吗?如果可以,该如何操作?我尝试了以下代码:
<welcome-file-list>
<welcome-file>FilterForwarded</welcome-file>
</welcome-file-list>
<!-- FilterForwarded is a servlet -->
在部署时,我没有看到任何错误,但当我尝试打开网站abc.com时,浏览器显示无法连接到此网站的消息。为什么会这样?
我希望当有人访问该网站时,我能够存储客户端的公共IP。为了实现这一目标,我编写了一个过滤器(Filter),它在获取IP后将其传递给servlet(从那里我可以更新日志)。在存储了IP之后,客户端将自动重定向到index.jsp。有没有办法实现这个目标?
编辑:
<servlet-mapping>
<servlet-name>FilterForwarded</servlet-name>
<url-pattern>/FilterForwarded</url-pattern>
</servlet-mapping>
这是在web.xml中定义的映射。当我在欢迎文件中使用/FilterForwarded
时,尝试部署时会出现以下消息:配置错误:欢迎文件必须是相对路径:/FilterForwarded
从日志中可以看到:
com.google.apphosting.utils.config.AppEngineConfigException: Welcome files must be relative paths: /FilterForwarded
at com.google.apphosting.utils.config.WebXml.validate(WebXml.java:125)
at com.google.appengine.tools.admin.Application.<init>(Application.java:150)
at com.google.appengine.tools.admin.Application.readApplication(Application.java:225)
at com.google.appengine.tools.admin.AppCfg.<init>(AppCfg.java:145)
at com.google.appengine.tools.admin.AppCfg.<init>(AppCfg.java:69)
at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:65)
servlet-mapping
?它的名称是什么? - João Silva