@Override public void configure(final Env env, final Config conf, final Binder binder) throws Throwable { ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver(); boolean cacheable = !env.name().equals("dev"); /** Defaults: */ resolver.setCacheable(cacheable); resolver.setPrefix(prefix); resolver.setSuffix(suffix); resolver.setTemplateMode(TemplateMode.HTML); TemplateEngine engine = new TemplateEngine(); engine.setTemplateResolver(resolver); if (callback != null) { callback.accept(engine, conf); } binder.bind(TemplateEngine.class).toInstance(engine); binder.bind(ITemplateEngine.class).toInstance(engine); Multibinder.newSetBinder(binder, Renderer.class) .addBinding() .toInstance(new ThlEngine(engine, env)); } }
switch (config.getResourceMode()) { case CLASSPATH: final ClassLoaderTemplateResolver classLoaderResolver = new ClassLoaderTemplateResolver(); classLoaderResolver.setCharacterEncoding(config.getCharsetStr()); classLoaderResolver.setTemplateMode(TemplateMode.HTML); resolver = classLoaderResolver; break;
private ITemplateResolver initializeTemplateResolver(ClassLoader classLoader, NutMap prop) { ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(classLoader); templateResolver.setTemplateMode(prop.getString("mode", "HTML")); templateResolver.setPrefix(prop.getString("prefix", "template/")); templateResolver.setSuffix(prop.getString("suffix", ".html")); templateResolver.setCharacterEncoding(prop.getString("encoding", "UTF-8")); templateResolver.setCacheable(prop.getBoolean("cache", true)); templateResolver.setCacheTTLMs(prop.getLong("cacheTTLMs", 3600000L)); return templateResolver; } }
ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver(); resolver.setTemplateMode("HTML5"); resolver.setSuffix(".html"); TemplateEngine templateEngine = new TemplateEngine(); templateEngine.setTemplateResolver(resolver); final Context context = new Context(Locale.CANADA); String name = "John Doe"; context.setVariable("name", name); // add more objects from your ResultSet final String html = templateEngine.process("myhtml", context);
fileResolver.setPrefix(config.prefix); clResolver.setSuffix(config.suffix); clResolver.setPrefix(config.prefix); clResolver.setTemplateMode(config.template_mode); clResolver.setCacheable(config.cacheable); clResolver.setCacheTTLMs(config.cache_age_ms); clResolver.setCharacterEncoding(config.character_encoding); clResolver.setOrder(config.classLoader_resolver_order);
@Bean public SpringTemplateEngine templateEngine() { ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setTemplateMode( TemplateMode.TEXT ); templateResolver.setCharacterEncoding( "UTF-8" ); templateResolver.setCacheable( false ); SpringTemplateEngine templateEngine = new SpringTemplateEngine(); templateEngine.setTemplateResolver( templateResolver ); return templateEngine; } }
private static TemplateEngine createEngine() { ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver(); resolver.setTemplateMode("HTML5"); resolver.setCacheTTLMs(60 * 1000L); resolver.setCacheable(true); TemplateEngine engine = new TemplateEngine(); engine.setTemplateResolver(resolver); return engine; } }
private String getMailBodyFromTemplate(String templateName, Map<String, Object> vars){ ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver(); resolver.setPrefix("email-templates/"); //模板所在目录,相对于当前classloader的classpath。 resolver.setSuffix(".html"); //模板文件后缀 TemplateEngine templateEngine = new TemplateEngine(); templateEngine.setTemplateResolver(resolver); Context context = new Context(); for(Iterator<String> iterator = vars.keySet().iterator(); iterator.hasNext();){ String key = iterator.next(); context.setVariable(key, vars.get(key)); } StringWriter writer = new StringWriter(); templateEngine.process("example", context, writer); return writer.toString(); } }
private static TemplateResolver buildTemplateResolver() { final TemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setTemplateMode("HTML5"); templateResolver.setCharacterEncoding("UTF-8"); return templateResolver; }
private Set<ITemplateResolver> prepareResolvers() { Set<ITemplateResolver> resolvers = new HashSet<ITemplateResolver>(); String templateHome = templateHome(); templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setPrefix(templateHome); templateResolver.setCacheable(Act.isProd()); resolvers.add(templateResolver); return resolvers; }
ClassLoaderTemplateResolver emailResolver = new ClassLoaderTemplateResolver(); emailResolver.setPrefix("/mailTemplates/");
/** * {@inheritDoc} */ @Override public final void execute() throws Exception { checkCatalog(); final Context context = new Context(); context.setVariable("catalog", catalog); context.setVariable("identifiers", identifiers); final TemplateEngine templateEngine = new TemplateEngine(); final Charset inputCharset = outputOptions.getInputCharset(); final FileTemplateResolver fileResolver = new FileTemplateResolver(); fileResolver.setCheckExistence(true); templateEngine.addTemplateResolver(configure(fileResolver, inputCharset)); final ClassLoaderTemplateResolver classpathResolver = new ClassLoaderTemplateResolver(); classpathResolver.setCheckExistence(true); templateEngine .addTemplateResolver(configure(classpathResolver, inputCharset)); final UrlTemplateResolver urlResolver = new UrlTemplateResolver(); urlResolver.setCheckExistence(true); templateEngine.addTemplateResolver(configure(urlResolver, inputCharset)); final String templateLocation = outputOptions.getOutputFormatValue(); try (final Writer writer = outputOptions.openNewOutputWriter();) { templateEngine.process(templateLocation, context, writer); } }
ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver(); resolver.setTemplateMode("HTML5"); resolver.setSuffix(".html"); TemplateEngine templateEngine = new TemplateEngine(); templateEngine.setTemplateResolver(resolver); final Context context = new Context(Locale.CANADA); String name = "John Doe"; context.setVariable("name", name); final String html = templateEngine.process("myhtml", context);
private static TemplateResolver buildTemplateResolver() { final TemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setTemplateMode("HTML5"); templateResolver.setCharacterEncoding("UTF-8"); return templateResolver; } }
ClassLoaderTemplateResolver emailResolver = new ClassLoaderTemplateResolver(); emailResolver.setPrefix("/WEB-INF/mailTemplates/");
/** * {@inheritDoc} */ @Override public final void execute() throws Exception { checkCatalog(); final Context context = new Context(); context.setVariable("catalog", catalog); context.setVariable("identifiers", identifiers); final TemplateEngine templateEngine = new TemplateEngine(); final Charset inputCharset = outputOptions.getInputCharset(); final FileTemplateResolver fileResolver = new FileTemplateResolver(); fileResolver.setCheckExistence(true); templateEngine.addTemplateResolver(configure(fileResolver, inputCharset)); final ClassLoaderTemplateResolver classpathResolver = new ClassLoaderTemplateResolver(); classpathResolver.setCheckExistence(true); templateEngine .addTemplateResolver(configure(classpathResolver, inputCharset)); final UrlTemplateResolver urlResolver = new UrlTemplateResolver(); urlResolver.setCheckExistence(true); templateEngine.addTemplateResolver(configure(urlResolver, inputCharset)); final String templateLocation = outputOptions.getOutputFormatValue(); try (final Writer writer = outputOptions.openNewOutputWriter();) { templateEngine.process(templateLocation, context, writer); } }
@Configuration public class ThymeleafEmailConfiguration { @Bean public JavaMailSender getJavaMailSenderImpl(){ JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl(); Properties props = new Properties(); /* some properties here */ javaMailSender.setJavaMailProperties(props); return javaMailSender; } @Bean public ClassLoaderTemplateResolver emailTemplateResolver(){ ClassLoaderTemplateResolver emailTemplateResolver = new ClassLoaderTemplateResolver(); emailTemplateResolver.setPrefix("/mails/"); emailTemplateResolver.setSuffix(".html"); emailTemplateResolver.setTemplateMode("HTML5"); emailTemplateResolver.setCharacterEncoding("UTF-8"); emailTemplateResolver.setOrder(1); return emailTemplateResolver; } }
ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver(); templateResolver.setTemplateMode("HTML"); templateResolver.setSuffix(".html"); templateEngine.setTemplateResolver(templateResolver); Context context = new Context();
switch (config.getResourceMode()) { case CLASSPATH: final ClassLoaderTemplateResolver classLoaderResolver = new ClassLoaderTemplateResolver(); classLoaderResolver.setCharacterEncoding(config.getCharsetStr()); classLoaderResolver.setTemplateMode(TemplateMode.HTML); resolver = classLoaderResolver; break;
private void init() { TemplateResolver resolver = null; String templatePath = _config.get("view.thymeleaf.templates", "classpath:/templates"); if (templatePath.startsWith("classpath:")) { String root = templatePath.substring("classpath:".length()); resolver = new ClassLoaderTemplateResolver(); resolver.setPrefix(root); } else { resolver = new TemplateResolver(); } _engine = new TemplateEngine(); _engine.setTemplateResolver(resolver); }