当前位置: 首页>>代码示例>>Java>>正文


Java Configuration.setServletContextForTemplateLoading方法代码示例

本文整理汇总了Java中freemarker.template.Configuration.setServletContextForTemplateLoading方法的典型用法代码示例。如果您正苦于以下问题:Java Configuration.setServletContextForTemplateLoading方法的具体用法?Java Configuration.setServletContextForTemplateLoading怎么用?Java Configuration.setServletContextForTemplateLoading使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在freemarker.template.Configuration的用法示例。


在下文中一共展示了Configuration.setServletContextForTemplateLoading方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: initTemplateEngineCfg

import freemarker.template.Configuration; //导入方法依赖的package包/类
/**
 * Initializes template engine configuration.
 */
private void initTemplateEngineCfg() {
	configuration = new Configuration();
	configuration.setDefaultEncoding("UTF-8");
	final ServletContext servletContext = ContextLoader.getCurrentWebApplicationContext().getServletContext();

	configuration.setServletContextForTemplateLoading(servletContext, "/plugins/" + dirName);
	logger.debug("Initialized template configuration:{}", dirName);
	readLangs();
}
 
开发者ID:daima,项目名称:solo-spring,代码行数:13,代码来源:AbstractPlugin.java

示例2: crateHTML

import freemarker.template.Configuration; //导入方法依赖的package包/类
/**
 * 生成静态页面主方法
 * 
 * @param context
 *            ServletContext
 * @param data
 *            一个Map的数据结果集
 * @param templatePath
 *            ftl模版路径
 * @param targetHtmlPath
 *            生成静态页面的路径
 */
public static void crateHTML(ServletContext context, Object data, String templatePath, String targetHtmlPath) {
    Configuration freemarkerCfg = new Configuration();
    // 加载模版
    freemarkerCfg.setServletContextForTemplateLoading(context, "/");
    freemarkerCfg.setEncoding(Locale.getDefault(), "UTF-8");
    try {
        // 指定模版路径
        Template template = freemarkerCfg.getTemplate(templatePath, "UTF-8");
        template.setEncoding("UTF-8");
        // 静态页面路径
        String htmlPathString = context.getRealPath("/") + "/" + targetHtmlPath;
        File htmlFile = new File(htmlPathString);

        if (!htmlFile.getParentFile().exists()) {
            htmlFile.getParentFile().mkdirs();
        }
        htmlFile.createNewFile();
        Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(htmlFile), "UTF-8"));
        // 处理模版
        template.process(data, out);
        out.flush();
        out.close();
    } catch (Exception e) {
        logger.error("error occured where generate Html file.", e);
    }
}
 
开发者ID:luckyyeah,项目名称:YiDu-Novel,代码行数:39,代码来源:StaticUtils.java

示例3: DocumentTemplate

import freemarker.template.Configuration; //导入方法依赖的package包/类
public DocumentTemplate(javax.servlet.ServletContext servletContext,
		String pathPrefix) {
	cf = new Configuration();
	try {
		cf.setServletContextForTemplateLoading(servletContext, pathPrefix);
	} catch (Exception e) {
		throw new AppRuntimeException(e);
	}
}
 
开发者ID:jbeetle,项目名称:BJAF3.x,代码行数:10,代码来源:DocumentTemplate.java

示例4: FreemarkerTemplate

import freemarker.template.Configuration; //导入方法依赖的package包/类
public FreemarkerTemplate()
{
	cfg = new Configuration();
	try 
	{
		//File cfgPath = new File(config.getConfigurationPath());
		//cfg.setDirectoryForTemplateLoading( new File(cfgPath.getParent()) );
		cfg.setServletContextForTemplateLoading(TernContext.getServletContext(),"/WEB-INF/views");
		//cfg.setTemplateLoader(loader)
		
		//cfg.setLocale(Locale.CHINA);
		cfg.setSetting("date_format", "yyyy-MM-dd");
		cfg.setSetting("time_format", "HH:mm:ss");
		cfg.setSetting("datetime_format", "yyyy-MM-dd HH:mm:ss");			
	}
	catch (Exception e) 
	{
		cfg = null;
		Trace.write(Trace.Error, e,"init freemarker failed!");
		return;
	}
	
	cfg.setDefaultEncoding(config.getEncoding());
	cfg.setOutputEncoding(config.getEncoding());		
	
	wrapper = new ActionDataWrapper();//ObjectWrapper.BEANS_WRAPPER;//.DEFAULT_WRAPPER;
	/*wrapper = new DefaultObjectWrapper(){
		 public TemplateModel wrap(Object obj) throws TemplateModelException {
			 if(obj instanceof com.tern.dao.RecordSet){
				 return new freemarker.template.SimpleCollection(((com.tern.dao.RecordSet)obj).iterator(), this);
			 }
			 return super.wrap(obj);
		 }
	};*/
	cfg.setObjectWrapper(wrapper);
	
	
	cfg.setTemplateExceptionHandler(new TemplateExceptionHandler(){

		@Override
		public void handleTemplateException(TemplateException te,
				Environment env, Writer writer) throws TemplateException {
			if(config.isDebug()) 
			{
				if(te.getCause() instanceof RedirectRequest)
				{
					throw (RedirectRequest)te.getCause();
				}
				
				TemplateExceptionHandler.HTML_DEBUG_HANDLER.handleTemplateException(te, env, writer);
			}
			
			throw te;
		}
		
	});
	
	/*if(config.isDebug())
	{
		cfg.setTemplateExceptionHandler(TemplateExceptionHandler.HTML_DEBUG_HANDLER);
		cfg.setTemplateUpdateDelay(0);
	}
	else
	{
		cfg.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
		cfg.setTemplateUpdateDelay(config.getInt("template.delay", 3600));
	}*/
	if(!config.isDebug())
	{
		cfg.setTemplateUpdateDelay(config.getInt("template.delay", 3600));
	}
}
 
开发者ID:fancimage,项目名称:tern,代码行数:73,代码来源:FreemarkerTemplate.java

示例5: execute

import freemarker.template.Configuration; //导入方法依赖的package包/类
public void execute(PageContext pageContext) throws Exception {
	Configuration cfg = new Configuration();
	cfg.setServletContextForTemplateLoading(pageContext.getServletContext(), "WEB-INF/templates");

	Map root = new HashMap();
	root.put("name", "Tom");

	Template t = cfg.getTemplate("test.ftl");

	Writer out = pageContext.getResponse().getWriter();

	t.process(root, out);
}
 
开发者ID:wkeyuan,项目名称:DWSurvey,代码行数:14,代码来源:FreemarkerTest.java


注:本文中的freemarker.template.Configuration.setServletContextForTemplateLoading方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。