Details
Description
I'd like to create a ResourceLoader similar to DataSourceResourceLoader, except that I'd like to set
the DataSource via IoC (in Spring). The main reason for this is so my database-loading of templates
does not depend on a JNDI connection.
The main problem is how to manage a ResourceLoader with Spring and then set it declaratively on its
VelocityEngine - rather than via properties.
<suggested patch from Will Glass-Husain>
Does this mean that you'd need to pass in an instance of a resource manager
(initialized with the datasource) to VelocityEngine, rather than just set
the class name as a property? (MR - Yes)
As I understand the source code, this doesn't seem possible. But I think a
patch wouldn't be difficult. (a change to
RuntimeInstance.initializeResourceManager) to look for an instance of the
class as well as the class name. Something similar to
LogManager.createLogSystem which accepts as a property the class name of a
class that implements LogSystem, or an instance of the class itself.
</suggested patch>