Class JarResourceLoader
java.lang.Object
org.apache.velocity.runtime.resource.loader.ResourceLoader
org.apache.velocity.runtime.resource.loader.JarResourceLoader
ResourceLoader to load templates from multiple Jar files.
The configuration of the JarResourceLoader is straightforward - You simply add the JarResourceLoader to the configuration via
resource.loaders = jar
resource.loader.jar.class = org.apache.velocity.runtime.resource.loader.JarResourceLoader
resource.loader.jar.path = list of JAR <URL>s
So for example, if you had a jar file on your local filesystem, you could simply do
resource.loader.jar.path = jar:file:/opt/myfiles/jar1.jar
Note that jar specification for the .path
configuration property
conforms to the same rules for the java.net.JarUrlConnection class.
For a working example, see the unit test case, org.apache.velocity.test.MultiLoaderTestCase class
- Version:
- $Id$
- Author:
- Aki Nieminen, Dave Bryson
-
Field Summary
Fields inherited from class org.apache.velocity.runtime.resource.loader.ResourceLoader
className, isCachingOn, log, modificationCheckInterval, rsvc
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlong
getLastModified
(Resource resource) Get the last modified time of the InputStream source that was used to create the template.getResourceReader
(String source, String encoding) Get a Reader so that the Runtime can build a template with it.void
init
(ExtProperties configuration) Called by Velocity to initialize the loaderboolean
isSourceModified
(Resource resource) Given a template, check to see if the source of InputStream has been modified.Methods inherited from class org.apache.velocity.runtime.resource.loader.ResourceLoader
buildReader, commonInit, getClassName, getModificationCheckInterval, isCachingOn, resourceExists, setCachingOn, setModificationCheckInterval
-
Constructor Details
-
JarResourceLoader
public JarResourceLoader()
-
-
Method Details
-
init
Called by Velocity to initialize the loader- Specified by:
init
in classResourceLoader
- Parameters:
configuration
-
-
getResourceReader
Get a Reader so that the Runtime can build a template with it.- Specified by:
getResourceReader
in classResourceLoader
- Parameters:
source
- name of template to getencoding
- asked encoding- Returns:
- InputStream containing the template
- Throws:
ResourceNotFoundException
- if template not found in the file template path.- Since:
- 2.0
-
isSourceModified
Description copied from class:ResourceLoader
Given a template, check to see if the source of InputStream has been modified.- Specified by:
isSourceModified
in classResourceLoader
- Parameters:
resource
-- Returns:
- True if the resource has been modified.
- See Also:
-
getLastModified
Description copied from class:ResourceLoader
Get the last modified time of the InputStream source that was used to create the template. We need the template here because we have to extract the name of the template in order to locate the InputStream source.- Specified by:
getLastModified
in classResourceLoader
- Parameters:
resource
-- Returns:
- Time in millis when the resource has been modified.
- See Also:
-