The above code sample works for me. It uses Velocity version 1.7 and log4j.
private static void velocityWithStringTemplateExample() { // Initialize the engine. VelocityEngine engine = new VelocityEngine(); engine.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, "org.apache.velocity.runtime.log.Log4JLogChute"); engine.setProperty("runtime.log.logsystem.log4j.logger", LOGGER.getName()); engine.setProperty(Velocity.RESOURCE_LOADER, "string"); engine.addProperty("string.resource.loader.class", StringResourceLoader.class.getName()); engine.addProperty("string.resource.loader.repository.static", "false"); // engine.addProperty("string.resource.loader.modificationCheckInterval", "1"); engine.init(); // Initialize my template repository. You can replace the "Hello $w" with your String. StringResourceRepository repo = (StringResourceRepository) engine.getApplicationAttribute(StringResourceLoader.REPOSITORY_NAME_DEFAULT); repo.putStringResource("woogie2", "Hello $w"); // Set parameters for my template. VelocityContext context = new VelocityContext(); context.put("w", "world!"); // Get and merge the template with my parameters. Template template = engine.getTemplate("woogie2"); StringWriter writer = new StringWriter(); template.merge(context, writer); // Show the result. System.out.println(writer.toString()); }
A similar , so the question is.
George Siggouroglou Mar 03 '16 at 15:07 2016-03-03 15:07
source share