Wro4j is a free and Open Source Java project which will help you to easily improve your web application page loading time. It can help you to keep your static resources (js & css) well organized, merge & minify them at run-time (using a simple filter) or build-time (using maven plugin) and has a dozen of features you may find useful when dealing with web resources.
Wro4j has 2 possible operating modes:
- Runtime solution - the resources are processed lazily after the first request. Assuming you have defined 100 groups and only one is requested, the remaining 99 won't be processed.
- Build time solution - the resources are processed when the application is built. You are in control of defining what groups should be generated (either all of them or only a subset enumerated in configuration).
If what you need is to have all resources available during application startup, then probably using a build-time solution (Maven plugin) is the best suited for you. Alternatively, you could use the runtime solution and explicitly perform requests for all the groups after application startup.
In order to get started with Wro4j's runtime solution, you have to follow only 3 simple steps.
<filter>
<filter-name>WebResourceOptimizer</filter-name>
<filter-class>ro.isdc.wro.http.WroFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>WebResourceOptimizer</filter-name>
<url-pattern>/wro/*</url-pattern>
</filter-mapping>
<groups xmlns="http://www.isdc.ro/wro">
<group name="all">
<css>/asset/*.css</css>
<js>/asset/*.js</js>
</group>
</groups>
<html>
<head>
<title>Web Page using wro4j</title>
<link rel="stylesheet" type="text/css" href="/wro/all.css" />
<script type="text/javascript" src="/wro/all.js"/>
</head>
<body>
<!-- Insert body of your page here -->
</body>
</html>
The documentation for this project is located here
Found a bug? Report it to the issue tracker
If you have any questions or suggestions, please feel free to post a comment to the discussion group
Follow us on Twitter.
This project is available under the Apache License, Version 2.0.