Jawr
De Dos Ideas.
Revisión del 20:31 8 feb 2012 de Eestevez (discusión | contribuciones)
Empaquetado y compresión de JS y CSS
Jawr es una solución de empaquetado para Javascript y CSS, que permite un rápido desarrollo de los recursos en módulos separados. Mediante el uso de una biblioteca de etiquetas, Jawr permite el uso de las mismas páginas, sin cambios para el desarrollo y la producción. Jawr también minimiza y comprime los archivos, lo que resulta en una reducción de los tiempos de carga. Jawr se configura mediante un archivo de properties.
ejemplo de jawr.properties
# Common properties jawr.debug.on=false jawr.gzip.on=false jawr.gzip.ie6.on=false jawr.charset.name=UTF-8 # Javascript properties and mappings jawr.js.bundle.basedir=/js # All files within /js/lib will be together in a bundle. # The remaining scripts will be served sepparately. jawr.js.bundle.jquery.id=/jquery.js jawr.js.bundle.jquery.mappings=/js/jquery/** jawr.js.bundle.jquery-json.id=/jquery-json.js jawr.js.bundle.jquery-json.mappings=/js/jquery-json/** # The /bundles/lib.js bundle is global # (always imported before other scripts to pages using the taglib) jawr.js.bundle.lib.global=true # CSS properties and mappings jawr.css.bundle.basedir=/css # CSS files will be all bundled together automatically jawr.css.factory.use.singlebundle=true jawr.css.factory.singlebundle.bundlename=/default.css
web.xml
<servlet> <servlet-name>JavascriptServlet</servlet-name> <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> <init-param> <param-name>configLocation</param-name> <param-value>/jawr.properties</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet> <servlet-name>CSSServlet</servlet-name> <servlet-class>net.jawr.web.servlet.JawrServlet</servlet-class> <init-param> <param-name>configLocation</param-name> <param-value>/jawr.properties</param-value> </init-param> <init-param> <param-name>type</param-name> <param-value>css</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>JavascriptServlet</servlet-name> <url-pattern>*.js</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>CSSServlet</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping>
ejemplo de un jsp
<%@ taglib uri="http://jawr.net/tags" prefix="jwr"%> <%@ page contentType="text/html;charset=UTF-8"%> <html> <head> <jwr:script src="/jquery.js" /> <jwr:script src="/jquery-json.js" /> <jwr:style src="/default.css" /> </head> <body> <h 2>Hello World!</h 2> </body> </html>