Menu

segunda-feira, 2 de dezembro de 2013

Compressão Gzip com o filtro do Omnifaces

Já postei como habilitar a compressão Gzip pelo JBoss AS 7, o que pode até funcionar, mas de acordo com minhas experiências esse é um método mais suscetível a bugs.

Na semana passada passei a adotar uma nova biblioteca de suporte a JSF em meus projetos, o Omnifaces. Ele pode ser adicionado ao seu projeto pela adição da seguinte dependência no pom.xml:

<dependency>
 <groupId>org.omnifaces</groupId>
 <artifactId>omnifaces</artifactId>
 <version>1.6.3</version>
</dependency>

Uma de suas funcionalidades que considerei interessante foi o GzipResponseFilter, que habilita a compressão Gzip apenas pela seguinte declaração no web.xml:

<filter>
 <filter-name>gzipResponseFilter</filter-name>
 <filter-class>org.omnifaces.filter.GzipResponseFilter</filter-class>
</filter>
<filter-mapping>
 <filter-name>gzipResponseFilter</filter-name>
 <servlet-name>Faces Servlet</servlet-name>
 <dispatcher>REQUEST</dispatcher>
 <dispatcher>ERROR</dispatcher>
</filter-mapping>

Você também pode implementar seu próprio filter de compressão Gzip, mas na minha opinião esse método é simples, fácil e confiável.

Nenhum comentário :