Jawr

De Dos Ideas.
Saltar a: navegación, buscar

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.

Jawr.png

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>