Java Code Examples for freemarker.template.Configuration#setOutputEncoding()
The following examples show how to use
freemarker.template.Configuration#setOutputEncoding() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: Freemarker.java From freeacs with MIT License | 6 votes |
/** * Inits the freemarker. * * @return the configuration */ public static Configuration initFreemarker() { try { Configuration config = new Configuration(); config.setTemplateLoader(new ClassTemplateLoader(Freemarker.class, "/templates")); config.setTemplateUpdateDelay(0); config.setTemplateExceptionHandler(TemplateExceptionHandler.HTML_DEBUG_HANDLER); config.setObjectWrapper(ObjectWrapper.BEANS_WRAPPER); config.setDefaultEncoding("ISO-8859-1"); config.setOutputEncoding("ISO-8859-1"); config.setNumberFormat("0"); config.setSetting("url_escaping_charset", "ISO-8859-1"); config.setLocale(Locale.ENGLISH); setAutoImport(config); setSharedVariables(config); return config; } catch (Throwable e) { throw new RuntimeException("Could not initialise Freemarker configuration", e); } }
Example 2
Source File: Freemarker.java From freeacs with MIT License | 5 votes |
public Configuration initFreemarker() { Configuration config = new Configuration(); config.setTemplateLoader(new ClassTemplateLoader(Freemarker.class, "/templates")); config.setTemplateUpdateDelay(0); config.setTemplateExceptionHandler(TemplateExceptionHandler.HTML_DEBUG_HANDLER); config.setObjectWrapper(ObjectWrapper.DEFAULT_WRAPPER); config.setDefaultEncoding("UTF-8"); config.setOutputEncoding("UTF-8"); return config; }
Example 3
Source File: FreeMarkerService.java From freemarker-online-tester with Apache License 2.0 | 5 votes |
private FreeMarkerService(Builder bulder) { maxOutputLength = bulder.getMaxOutputLength(); maxThreads = bulder.getMaxThreads(); maxQueueLength = bulder.getMaxQueueLength(); maxTemplateExecutionTime = bulder.getMaxTemplateExecutionTime(); int actualMaxQueueLength = maxQueueLength != null ? maxQueueLength : Math.max( MIN_DEFAULT_MAX_QUEUE_LENGTH, (int) (MAX_DEFAULT_MAX_QUEUE_LENGTH_MILLISECONDS / maxTemplateExecutionTime)); ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor( maxThreads, maxThreads, THREAD_KEEP_ALIVE_TIME, TimeUnit.MILLISECONDS, new BlockingArrayQueue<Runnable>(actualMaxQueueLength)); threadPoolExecutor.allowCoreThreadTimeOut(true); templateExecutor = threadPoolExecutor; // Avoid ERROR log for using the actual current version. This application is special in that regard. Version latestVersion = new Version(Configuration.getVersion().toString()); freeMarkerConfig = new Configuration(latestVersion); freeMarkerConfig.setNewBuiltinClassResolver(TemplateClassResolver.ALLOWS_NOTHING_RESOLVER); freeMarkerConfig.setObjectWrapper(new SimpleObjectWrapperWithXmlSupport(latestVersion)); freeMarkerConfig.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER); freeMarkerConfig.setLogTemplateExceptions(false); freeMarkerConfig.setAttemptExceptionReporter(new AttemptExceptionReporter() { @Override public void report(TemplateException te, Environment env) { // Suppress it } }); freeMarkerConfig.setLocale(AllowedSettingValues.DEFAULT_LOCALE); freeMarkerConfig.setTimeZone(AllowedSettingValues.DEFAULT_TIME_ZONE); freeMarkerConfig.setOutputFormat(AllowedSettingValues.DEFAULT_OUTPUT_FORMAT); freeMarkerConfig.setOutputEncoding("UTF-8"); }
Example 4
Source File: OutMsgXmlBuilder.java From jfinal-weixin with Apache License 2.0 | 5 votes |
private static Configuration initFreeMarkerConfiguration() { Configuration config = new Configuration(); StringTemplateLoader stringTemplateLoader = new StringTemplateLoader(); initStringTemplateLoader(stringTemplateLoader); config.setTemplateLoader(stringTemplateLoader); // 模板缓存更新时间,对于OutMsg xml 在类文件中的模板来说已有热加载保障了更新 config.setTemplateUpdateDelay(999999); // - Set an error handler that prints errors so they are readable with // a HTML browser. // config.setTemplateExceptionHandler(TemplateExceptionHandler.HTML_DEBUG_HANDLER); config.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER); // - Use beans wrapper (recommmended for most applications) config.setObjectWrapper(ObjectWrapper.BEANS_WRAPPER); // - Set the default charset of the template files config.setDefaultEncoding(encoding); // config.setDefaultEncoding("ISO-8859-1"); // - Set the charset of the output. This is actually just a hint, that // templates may require for URL encoding and for generating META element // that uses http-equiv="Content-type". config.setOutputEncoding(encoding); // config.setOutputEncoding("UTF-8"); // - Set the default locale config.setLocale(Locale.getDefault() /* Locale.CHINA */ ); // config.setLocale(Locale.US); config.setLocalizedLookup(false); // 去掉int型输出时的逗号, 例如: 123,456 // config.setNumberFormat("#"); // config.setNumberFormat("0"); 也可以 config.setNumberFormat("#0.#####"); config.setDateFormat("yyyy-MM-dd"); config.setTimeFormat("HH:mm:ss"); config.setDateTimeFormat("yyyy-MM-dd HH:mm:ss"); return config; }
Example 5
Source File: EventEmail.java From unitime with Apache License 2.0 | 4 votes |
private String message() throws IOException, TemplateException { Configuration cfg = new Configuration(Configuration.VERSION_2_3_0); cfg.setClassForTemplateLoading(EventEmail.class, ""); cfg.setLocale(Localization.getJavaLocale()); cfg.setOutputEncoding("utf-8"); Template template = cfg.getTemplate("confirmation.ftl"); Map<String, Object> input = new HashMap<String, Object>(); input.put("msg", MESSAGES); input.put("const", CONSTANTS); input.put("subject", subject()); input.put("event", event()); input.put("eventGridStartDay", ApplicationProperty.EventGridStartDay.intValue()); input.put("operation", request().getOperation() == null ? "NONE" : request().getOperation().name()); if (response().hasCreatedMeetings()) input.put("created", EventInterface.getMultiMeetings(response().getCreatedMeetings(), true, false)); if (response().hasDeletedMeetings()) input.put("deleted", EventInterface.getMultiMeetings(response().getDeletedMeetings(), true, false)); if (response().hasCancelledMeetings()) input.put("cancelled", EventInterface.getMultiMeetings(response().getCancelledMeetings(), true, false)); if (response().hasUpdatedMeetings()) input.put("updated", EventInterface.getMultiMeetings(response().getUpdatedMeetings(), true, false)); if (request().hasMessage()) input.put("message", request().getMessage()); if (request().getEvent().getId() != null) { if (event().hasMeetings()) { input.put("meetings", EventInterface.getMultiMeetings(event().getMeetings(), true, false)); } else input.put("meetings", new TreeSet<MultiMeetingInterface>()); } input.put("version", MESSAGES.pageVersion(Constants.getVersion(), Constants.getReleaseDate())); input.put("ts", new Date()); input.put("link", ApplicationProperty.UniTimeUrl.value()); if (iRequest.hasSessionId()) { Session session = SessionDAO.getInstance().get(iRequest.getSessionId()); if (session != null) input.put("sessionId", session.getReference()); else input.put("sessionId", iRequest.getSessionId()); } StringWriter s = new StringWriter(); template.process(input, new PrintWriter(s)); s.flush(); s.close(); return s.toString(); }
Example 6
Source File: FreemarkerTemplateEngine.java From pippo with Apache License 2.0 | 4 votes |
@Override public void init(Application application) { super.init(application); Router router = getRouter(); PippoSettings pippoSettings = getPippoSettings(); configuration = new Configuration(Configuration.VERSION_2_3_21); configuration.setDefaultEncoding(PippoConstants.UTF8); configuration.setOutputEncoding(PippoConstants.UTF8); configuration.setLocalizedLookup(true); configuration.setClassForTemplateLoading(FreemarkerTemplateEngine.class, getTemplatePathPrefix()); // We also do not want Freemarker to chose a platform dependent // number formatting. Eg "1000" could be printed out by FTL as "1,000" // on some platforms. // See also: // http://freemarker.sourceforge.net/docs/app_faq.html#faq_number_grouping configuration.setNumberFormat("0.######"); // now it will print 1000000 if (pippoSettings.isDev()) { configuration.setTemplateUpdateDelayMilliseconds(0); // disable cache } else { // never update the templates in production or while testing... configuration.setTemplateUpdateDelayMilliseconds(Integer.MAX_VALUE); // Hold 20 templates as strong references as recommended by: // http://freemarker.sourceforge.net/docs/pgui_config_templateloading.html configuration.setCacheStorage(new freemarker.cache.MruCacheStorage(20, Integer.MAX_VALUE)); } // set global template variables configuration.setSharedVariable("contextPath", new SimpleScalar(router.getContextPath())); configuration.setSharedVariable("appPath", new SimpleScalar(router.getApplicationPath())); webjarResourcesMethod = new WebjarsAtMethod(router); publicResourcesMethod = new PublicAtMethod(router); // allow custom initialization init(application, configuration); }