Java 如何在Google App Engine中缩小HTML响应

Java 如何在Google App Engine中缩小HTML响应,java,spring-boot,google-app-engine,Java,Spring Boot,Google App Engine,我有一个springboot应用程序&托管在googleappengine上。工作正常。 我试图缩小html响应。Minify在我的本地pc上与Tomcat一起工作 但minify不能在谷歌应用程序引擎中工作 pom.xml CharResponseWrapper.java 在谷歌应用程序引擎中 CharResponseWrapper responseWrapper = new CharResponseWrapper((HttpServletResponse) response); respo

我有一个springboot应用程序&托管在googleappengine上。工作正常。 我试图缩小html响应。Minify在我的本地pc上与Tomcat一起工作

但minify不能在谷歌应用程序引擎中工作

pom.xml CharResponseWrapper.java 在谷歌应用程序引擎中

CharResponseWrapper responseWrapper = new CharResponseWrapper((HttpServletResponse) response);

responseWrappernull

您可以尝试编写一个部署脚本,用缩小的HTML复制代码,然后在部署时调用它

@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    HttpServletResponse httpResponse = (HttpServletResponse) response;
    PrintWriter outWriter;
    try {
        CharResponseWrapper responseWrapper = new CharResponseWrapper((HttpServletResponse) response);
        chain.doFilter(request, responseWrapper);
        String servletResponse = responseWrapper.toString();
        if (servletResponse != null && !servletResponse.equals("")) {
            outWriter = httpResponse.getWriter();
            outWriter.write(compressor.compress(servletResponse));
            outWriter.flush();
            outWriter.close();
        }
    } catch (Exception ex) {

    }
}
package com.app.filter;

import java.io.CharArrayWriter;
import java.io.PrintWriter;

import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;

public class CharResponseWrapper extends HttpServletResponseWrapper 
{
    private final CharArrayWriter output;

    public CharResponseWrapper(HttpServletResponse response)
    {
        super(response);
        output = new CharArrayWriter();
    }

    @Override
    public PrintWriter getWriter() 
    {
        return new PrintWriter(output);
    }
    
    @Override
    public String toString() 
    {
        return output.toString();
    }    
}
CharResponseWrapper responseWrapper = new CharResponseWrapper((HttpServletResponse) response);