0 Replies Latest reply on Nov 14, 2012 7:19 AM by Adrien Adrien

    [RF 4.3.M3] a4j:push and Gzip Filter don't miss exclude push url

    Adrien Adrien Apprentice

      Hi,

      I'm trying to use a gzip filter with my application (AS 7 / RF 4.x). In my case I use omnifaces gzip filter.

       

      In my fist test I used <url-pattern>/*</url-pattern> to gzip all.  I had a problem with a4j:push, the push flux don't support to be zipped, may be it's 'long pooling'.

       

      The url used by a4j push is  like this http://localhost/__richfaces_push?__richfacesPushAsync=1&pushSessionId=e4411dfe-b048-43e5-bff8-30bbf3e278e5&X-Atmosphere-tracking-id=56e7f183-5c3e-48f2-a5c5-6ee7186a4c94&X-Atmosphere-Framework=1.0.1&X-Atmosphere-Transport=long-polling&X-Cache-Date=0&_=1352894769114

       

      So If someone try to used gzip filter and he use a4j:push, you have to specificy what can be gzipped, I've used these url-pattern:

      <filter>

          <filter-name>gzipResponseFilter</filter-name>

          <filter-class>org.omnifaces.filter.GzipResponseFilter</filter-class>

      </filter>

      <filter-mapping>

          <filter-name>gzipResponseFilter</filter-name>

           <!-- Don't use /* it will gzip a4j:push et it'll not working!

               <url-pattern>/*</url-pattern >  

           -->

                  <url-pattern>*.jsf</url-pattern>

                  <url-pattern>*.css</url-pattern>

                  <url-pattern>*.js</url-pattern>

                  <url-pattern>*.html</url-pattern>

       

          <dispatcher>REQUEST</dispatcher>

          <dispatcher>ERROR</dispatcher>

      </filter-mapping>

       

       

       

       

       

      I've a question about the url format for a4j:push, it will be possible to keep it like actually and never end it with an extension very used (like .jsf or another)? In this case it will complicate the definition of the url-pattern....

       

      Thanks Adrien