1

我正在尝试对 html 文件的请求通过谷歌应用引擎部署中的过滤器。我的目标是通过将其排除为静态文件并根据以下建议使其成为资源文件来实现此目的:https ://groups.google.com/forum/?fromgroups=#!topic/google-appengine-java/VbPYdkNhW98

不幸的是,我没有这样做。所以要么我误解了,这是不可能的,要么我做错了什么。任何人都可以对此有所了解吗?调用localhost:8888/index.htmllocalhost:8888/app.html不通过过滤器。

非常感激!

ps:所有.html文件都位于/war/WWW-ROOT/我的eclipse项目目录下。该过滤器非常适用于/servlets/firstservlet. 在这篇文章下方,您可以找到 和 的web.xml内容appengine-web.xml

Web.xml

<?xml version="1.0" encoding="utf-8" standalone="no"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

<!-- servlet definition and mapping -->

<servlet>
    <servlet-name>firstservlet</servlet-name>
    <servlet-class>zorgco.FirstServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>firstservlet</servlet-name>
    <url-pattern>/servlets/firstservlet</url-pattern>
</servlet-mapping>


<!-- enforce https -->

<security-constraint>
    <web-resource-collection>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>


<!-- define and enforce authentication filters -->

<filter>
    <filter-name>authorization</filter-name>
    <filter-class>zorgco.AuthorizationFilter</filter-class>
</filter>

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

<static-files>
    <exclude path="/*" />
</static-files>

<resource-files>
    <include path="/*" />
</resource-files>

<!-- Define welcome files -->

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>

Appengine-web.xml

<?xml version="1.0" encoding="utf-8"?>

<application>Name</application>

<version>1</version>

<threadsafe>true</threadsafe>

<public-root>/WWW-ROOT</public-root>

<system-properties> 
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
</system-properties>

<sessions-enabled>true</sessions-enabled>

4

1 回答 1

2

错误地将static-filesandresource-files元素放在 web.xml 而不是 appengine-web.xml 中。移动它们解决了这个问题。

于 2013-01-30T17:30:12.257 回答