java – GZIP JSF-Seam Web应用程序页面的最佳方法是什么?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – GZIP JSF-Seam Web应用程序页面的最佳方法是什么?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2447字,纯文字阅读大概需要4分钟。
内容图文
![java – GZIP JSF-Seam Web应用程序页面的最佳方法是什么?](/upload/InfoBanner/zyjiaocheng/709/b4198e086c5a4acf9a5dfa829e2198e4.jpg)
我正在Tomcat上开发一个JSF Web应用程序,计划在不久的将来使用Seam,我想添加我们的网页和资源(即Javascript和CSS文件)的压缩.我知道Java Web中GZIP响应的三种方法:
>使用Ehcache GZIP过滤器:它在Appfuse中使用,所以它可能是可靠的,它会在应用之前检查用户代理是否支持GZIP,但它似乎与Seam有问题,我们将使用http://seamframework.org/Community/EHCacheGZipFilterIncompatibleWithSeam.
>使用pjl-filter.从stackoverflow问题:Tomcat Compression Does Not Add a Content-Encoding: gzip in the Header,它似乎没有任何内存泄漏,但我不知道它是否有Seam问题.
>使用Tomcat的内置压缩 – 尽管它可能不提供内容编码(Tomcat 6.0.14似乎工作正常,但您只能提供一个黑名单,用于不应用的用户代理压缩.
有没有人在JSF-Seam环境中有这些方法的经验?哪个是“最佳”解决方案?
谢谢,
狭谷
解决方法:
GZIP过滤器将显着减少初始加载时间.您还可以实现cacheFilter,以使您的屏幕性能与基于JavaScript的UI(https://stackoverflow.com/a/35567540/5076414)相同.对于客户端组件,您可以使用基于JQuery的UI的Primefaces.
在JSF中启用GZIP过滤器
只需将此添加到您的
web.xml
<filter>
<filter-name>gzipResponseFilter</filter-name>
<filter-class>org.omnifaces.filter.GzipResponseFilter</filter-class>
<init-param>
<description>The threshold size in bytes. Must be a number between 0 and 9999. Defaults to 150.</description>
<param-name>threshold</param-name>
<param-value>150</param-value>
</init-param>
<init-param>
<description>The mimetypes which needs to be compressed. Must be a commaseparated string. Defaults to the below values.</description>
<param-name>mimetypes</param-name>
<param-value>
text/plain, text/html, text/xml, text/css, text/javascript, text/csv, text/rtf,
application/xml, application/xhtml+xml, application/x-javascript, application/javascript, application/json,
image/svg+xml, image/gif, application/x-font-woff, application/font-woff2, image/png
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>gzipResponseFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
<error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/</location>
</error-page>
以下是你的
pom.xml
<dependency>
<groupId>org.omnifaces</groupId>
<artifactId>omnifaces</artifactId>
<version>1.11</version>
</dependency>
如何验证我的屏幕是否使用gzip
要查看您的内容是否已经使用gzip和缓存,请在您的Google Chrome浏览器中 – >右键点击你的屏幕 – >检查 – >点击网络标签 – >刷新你的屏幕.单击图像,图标,样式表,看看您是否在响应标题中看到以下内容
内容编码:如果元素的状态是200,则gzip
内容总结
以上是互联网集市为您收集整理的java – GZIP JSF-Seam Web应用程序页面的最佳方法是什么?全部内容,希望文章能够帮你解决java – GZIP JSF-Seam Web应用程序页面的最佳方法是什么?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。