/** * Sets velocity up to load resources from a list of paths. */ protected VelocityEngine getVelocityEngine(List<String> paths) { VelocityEngine ve = new VelocityEngine(); ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "file"); ve.setProperty("cp.resource.loader.class", "org.apache.velocity.runtime.resource.loader.FileResourceLoader"); ve.setProperty("cp.resource.loader.cache", "true"); ve.setProperty("cp.resource.loader.path", StringUtils.join(paths, ",")); ve.setProperty("cp.resource.loader.modificationCheckInterval ", "10"); ve.setProperty("input.encoding", "UTF-8"); ve.setProperty("output.encoding", "UTF-8"); ve.setProperty("runtime.log", ""); return ve; } }
public VelocityEngine(String baseTemplateDir) { this.baseTemplateDir = Utils.notNull(baseTemplateDir); this.engine = new org.apache.velocity.app.VelocityEngine(); engine.setProperty("resource.loader", "classpath"); engine.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName()); engine.setProperty("classpath.resource.loader.cache", false); engine.setProperty("file.resource.loader.modificationCheckInterval", 0); engine.setProperty("input.encoding", "UTF-8"); engine.setProperty("velocimacro.permissions.allow.inline", true); engine.setProperty("velocimacro.library.autoreload", true); engine.setProperty("runtime.log.logsystem.class", Log4JLogChute.class); engine.setProperty("runtime.log.logsystem.log4j.logger", Logger.getLogger("org.apache.velocity.Logger")); engine.setProperty("parser.pool.size", 3); }
/** * Creates a new Velocity Engine. * * @return a velocity engine */ private VelocityEngine createVelocityEngine() { final VelocityEngine velocity = new VelocityEngine(); // Logging redirection for Velocity - Required by Jenkins and other server applications velocity.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, VelocityLoggerRedirect.class.getName()); return velocity; }
public static VelocityEngine getEngine() { try { VelocityEngine velocityEngine = new VelocityEngine(); velocityEngine.setProperty(RuntimeConstants.ENCODING_DEFAULT, "UTF-8"); //velocityEngine.setProperty(RuntimeConstants.OUTPUT_ENCODING, "UTF-8"); velocityEngine.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath"); velocityEngine.setProperty("classpath.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); //velocityEngine.setProperty(VelocityEngine.RUNTIME_LOG_LOGSYSTEM, new SLF4JLogChute()); velocityEngine.init(); return velocityEngine; } catch (Exception e) { throw new RuntimeException("Error configuring velocity", e); } }
engine.setProperty("resource.loader", "classpath, jar"); engine.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName()); engine.setProperty("classpath.resource.loader.cache", !devMode); engine.setProperty("classpath.resource.loader.modificationCheckInterval", 5L); engine.setProperty("jar.resource.loader.class", JarResourceLoader.class.getName()); engine.setProperty("jar.resource.loader.cache", !devMode); engine.setProperty("resource.manager.logwhenfound", false); engine.setProperty("input.encoding", "UTF-8"); engine.setProperty("output.encoding", "UTF-8"); engine.setProperty("directive.set.null.allowed", true); engine.setProperty("resource.manager.logwhenfound", false); engine.setProperty("velocimacro.permissions.allow.inline", true); engine.setProperty("velocimacro.library.autoreload", devMode); engine.setProperty("velocimacro.library", "/azkaban/webapp/servlet/velocity/macros.vm"); engine.setProperty( "velocimacro.permissions.allow.inline.to.replace.global", true); engine.setProperty("velocimacro.arguments.strict", true); engine.setProperty("runtime.log.invalid.references", devMode); engine.setProperty("runtime.log.logsystem.class", Log4JLogChute.class); engine.setProperty("runtime.log.logsystem.log4j.logger", Logger.getLogger("org.apache.velocity.Logger")); engine.setProperty("parser.pool.size", 3); return engine;
/** * 新建Velocity模板引擎 * * @param templateDir 模板所在目录,绝对路径 * @param charset 编码 * @return VelocityEngine */ public static VelocityEngine newEngine(String templateDir, String charset) { final VelocityEngine ve = new VelocityEngine(); ve.setProperty(Velocity.FILE_RESOURCE_LOADER_CACHE, true); // 使用缓存 ve.init(_newInitedProp(templateDir, charset)); return ve; }
/** * 新建Velocity模板引擎 * * @param templateDir 模板所在目录,绝对路径 * @param charset 编码 * @return VelocityEngine */ public static VelocityEngine newEngine(String templateDir, String charset) { final VelocityEngine ve = new VelocityEngine(); ve.setProperty(Velocity.FILE_RESOURCE_LOADER_CACHE, true); // 使用缓存 ve.init(_newInitedProp(templateDir, charset)); return ve; }
public StatsServlet(StatsPlugin statsPlugin) throws UnavailableException { this.statsPlugin = statsPlugin; this.velocityEngine = new VelocityEngine(); // These two properties tell Velocity to use its own classpath-based loader velocityEngine.addProperty("resource.loader", "class"); velocityEngine.addProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); velocityEngine.setProperty("runtime.references.strict", true); String logChuteName = "org.apache.velocity.runtime.log.NullLogChute"; velocityEngine.setProperty("runtime.log.logsystem.class", logChuteName); }
ve.setProperty(Velocity.INPUT_ENCODING, charsetStr); ve.setProperty(Velocity.OUTPUT_ENCODING, charsetStr); ve.setProperty(Velocity.FILE_RESOURCE_LOADER_CACHE, true); // 使用缓存 ve.setProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); break; case FILE: ve.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path); ve.setProperty(Velocity.RESOURCE_LOADER, "webapp"); ve.setProperty("webapp.resource.loader.class", "org.apache.velocity.tools.view.servlet.WebappLoader"); ve.setProperty("webapp.resource.loader.path", StrUtil.nullToDefault(config.getPath(), StrUtil.SLASH)); break; case STRING: ve.setProperty(Velocity.RESOURCE_LOADER, "str"); ve.setProperty("str.resource.loader.class", SimpleStringResourceLoader.class.getName()); break; default:
ve.setProperty(Velocity.INPUT_ENCODING, charsetStr); ve.setProperty(Velocity.OUTPUT_ENCODING, charsetStr); ve.setProperty(Velocity.FILE_RESOURCE_LOADER_CACHE, true); // 使用缓存 ve.setProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); break; case FILE: ve.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path); ve.setProperty(Velocity.RESOURCE_LOADER, "webapp"); ve.setProperty("webapp.resource.loader.class", "org.apache.velocity.tools.view.servlet.WebappLoader"); ve.setProperty("webapp.resource.loader.path", StrUtil.nullToDefault(config.getPath(), StrUtil.SLASH)); break; case STRING: ve.setProperty(Velocity.RESOURCE_LOADER, "str"); ve.setProperty("str.resource.loader.class", SimpleStringResourceLoader.class.getName()); break; default:
private void initVelocityEngine() { engine = new VelocityEngine(); engine.addProperty("resource.loader", "class, file"); engine.addProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); engine.addProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.FileResourceLoader"); engine.addProperty("file.resource.loader.path", "/, ."); engine.setProperty("runtime.references.strict", true); engine.setProperty("runtime.log.logsystem.class", "org.apache.velocity.runtime.log.NullLogSystem"); }
private void initializeVelocity() { this.velocityEngine = new VelocityEngine(); // These properties tell Velocity to use its own classpath-based // loader, then drop down to check the root and the current folder velocityEngine.addProperty("resource.loader", "class, file"); velocityEngine.addProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); velocityEngine.addProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.FileResourceLoader"); velocityEngine.addProperty("file.resource.loader.path", "/, ."); velocityEngine.setProperty("runtime.references.strict", true); // Set whitespace gobbling to Backward Compatible (BC) // http://velocity.apache.org/engine/2.0/developer-guide.html#space-gobbling velocityEngine.setProperty("space.gobbling", "bc"); }
/** * Instantiates a new CSdkGenerator. */ public CSdkGenerator() { velocityEngine = new VelocityEngine(); velocityEngine.addProperty("resource.loader", "class, file"); velocityEngine.addProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); velocityEngine.addProperty("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.FileResourceLoader"); velocityEngine.addProperty("file.resource.loader.path", "/, ."); velocityEngine.setProperty("runtime.references.strict", true); velocityEngine.setProperty("runtime.log.logsystem.class", "org.apache.velocity.runtime.log.NullLogSystem"); }
public EmbulkNew(final String categoryWithLanguage, final String nameGiven, final String embulkVersion) throws IOException { this.basePath = Paths.get(".").toAbsolutePath(); final LanguageAndCategory languageAndCategory = LanguageAndCategory.of(categoryWithLanguage); this.language = languageAndCategory.getLanguage(); this.category = languageAndCategory.getCategory(); this.nameGiven = nameGiven; this.embulkVersion = embulkVersion; if (category.equals("file_input")) { this.embulkCategory = "input"; } else if (category.equals("file_output")) { this.embulkCategory = "output"; } else { this.embulkCategory = category; } this.name = nameGiven.replaceAll("[^a-zA-Z0-9_]+", "_"); this.fullProjectName = "embulk-" + embulkCategory + "-" + name; this.pluginDirectory = "lib/embulk"; this.pluginPath = pluginDirectory + "/" + embulkCategory + "/" + name + ".rb"; this.pluginBasePath = this.basePath.resolve(fullProjectName); this.velocityEngine = new VelocityEngine(); this.velocityEngine.init(); this.velocityEngine.setProperty(VelocityEngine.RUNTIME_LOG_LOGSYSTEM_CLASS, "org.apache.velocity.runtime.log.NullLogSystem"); }
public Converter(String vmPath, String encode){ this.vmPath = vmPath; ve = new VelocityEngine(); // 设置模板加载路径,这里设置的是class下 ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "class"); ve.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); this.encode = encode; }
protected VelocityEngine initVelocity() { VelocityEngine ve = new VelocityEngine(); ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath"); ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName()); ve.setProperty("runtime.log.logsystem.class", "org.apache.velocity.runtime.log.SimpleLog4JLogSystem"); ve.setProperty("runtime.log.logsystem.log4j.category", "velocity"); ve.setProperty("runtime.log.logsystem.log4j.logger", "velocity"); ve.init(); return ve; }
VelocityEngine ve = new VelocityEngine(); ve.setProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, "path/to/templates"); ve.init(); Template t = ve.getTemplate("foo.vm");
public void init(URL resource) { LOGGER.info("Using \"" + StringUtils.getPrettyFileUrl(resource) + "\" as template dir"); velocityEngine = new VelocityEngine(); velocityEngine.setProperty(VelocityEngine.RESOURCE_LOADER, "url"); velocityEngine.setProperty("url.resource.loader.class", URLResourceLoader.class.getName()); velocityEngine.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, "org.apache.velocity.runtime.log.Log4JLogChute"); velocityEngine.setProperty("runtime.log.logsystem.log4j.logger", "velocity"); try { velocityEngine.setProperty("url.resource.loader.root", URLDecoder.decode(resource.toString(), "UTF-8")); } catch (UnsupportedEncodingException e) { LOGGER.error("", e); } try { velocityEngine.init(); } catch (Exception e) { LOGGER.error("", e); } } }
VelocityEngine ve = new VelocityEngine(); ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath"); ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName()); ve.init(); final String templatePath = "templates/" + templateName + ".vm"; InputStream input = this.getClass().getClassLoader().getResourceAsStream(templatePath); if (input == null) { throw new IOException("Template file doesn't exist"); } InputStreamReader reader = new InputStreamReader(input); VelocityContext context = new VelocityContext(); if (properties != null) { stringfyNulls(properties); for (Map.Entry<String, Object> property : properties.entrySet()) { context.put(property.getKey(), property.getValue()); } } Template template = ve.getTemplate(templatePath, "UTF-8"); String outFileName = File.createTempFile("report", ".html").getAbsolutePath(); BufferedWriter writer = new BufferedWriter(new FileWriter(new File(outFileName))); if (!ve.evaluate(context, writer, templatePath, reader)) { throw new Exception("Failed to convert the template into html."); } template.merge(context, writer); writer.flush(); writer.close();
@Override protected void postProcessVelocityEngine(VelocityEngine velocityEngine) { super.postProcessVelocityEngine(velocityEngine); velocityEngine.setProperty(ROSE_MACRO_RESOURCE_LOADER_CLASS, ClasspathResourceLoader.class .getName()); velocityEngine.addProperty(VelocityEngine.RESOURCE_LOADER, ROSE_MACRO_RESOURCE_LOADER_NAME); velocityEngine.addProperty(VelocityEngine.VM_LIBRARY, ROSE_MACRO_LIBRARY); if (logger.isInfoEnabled()) { logger.info("ClasspathResourceLoader with name '" + ROSE_MACRO_RESOURCE_LOADER_NAME + "' added to configured VelocityEngine"); } } }