首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jersey + GZIP编码

Jersey + GZIP编码
EN

Stack Overflow用户
提问于 2014-05-13 04:51:19
回答 1查看 1.7K关注 0票数 0

首先,我看了几个例子来说明如何在Jersey中使用GZIP压缩。

不过,我没有看到符合我正在开发的系统要求的东西,因为我使用的是Jersey 1.6,而Jersey从1.9到2.0有很大的变化。除此之外,我看到的所有完整示例都是在Jersey 2.0中。

搜索1.9或更低版本的完整示例,我发现该配置将放在web.xml文件中。

代码语言:javascript
复制
<init-param>
    <param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>
    <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value>
</init-param>
<init-param>
    <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
    <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value>
</init-param>

我认为我必须做更多的事情来支持GZIP压缩。注意:我还配置了一个欢迎文件。

编辑: this is my complete web.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://java.sun.com/xml/ns/javaee"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     version="2.5">
    <display-name>app</display-name>
    <servlet>
        <servlet-name>app-servlet</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>com.sun.jersey.config.property.packages</param-name>
            <param-value>com.app.controllers</param-value>
        </init-param>
        <init-param>
            <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
            <param-value>true</param-value>
        </init-param>
        <init-param>
            <param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>
            <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value>
        </init-param>
        <init-param>
            <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
            <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>app-servlet</servlet-name>
        <url-pattern>/service/*</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>hotel-application.html</welcome-file>
    </welcome-file-list>

    <!-- BEGIN Spring Security Config -->
    <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/login/*</url-pattern>
</servlet-mapping>
    <filter>
       <filter-name>springSecurityFilterChain</filter-name>
       <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
   <filter-name>springSecurityFilterChain</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>
<!-- END Spring Security Config -->

EN

回答 1

Stack Overflow用户

发布于 2014-10-30 08:03:03

如何测试servlet?标头中必须有Accept-Encoding:gzip。如果您在浏览器中测试您的web服务,浏览器很可能会将所有内容解压缩并显示给您。试试这个:curl -H Accept-Encoding:gzip -i -u user:pass http://your/web/service

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23618621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档