请教,使用freemark静态化时,只要模板中有include,马上报内存溢出 请教,使用free静态化时,如果模板没有include,则可以正确解析,但只要模板中有include,马上报内存溢出比如,template.process(root, writer);可以正常解析,但当模板前面加上<#include "/includes/header.ftl" />执行时,马上报错:java.lang.stackoverflowerror 请问该如何解决? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Configuration cfg = new Configuration();cfg.setTemplateLoader(new StringTemplateLoader(cgisOutputTemplate.getOutCode()));cfg.setDefaultEncoding("UTF-8");Template template = cfg.getTemplate("");Map root = new HashMap();// 得到模板代码String outCode = cgisOutputTemplate.getOutCode();root.put("Request", request);root.put("Session", request.getSession());root.put("JspTaglibs", new TaglibFactory(request.getSession().getServletContext()));ServletContextHashModel servletContextHashModel = (ServletContextHashModel) request.getSession() .getServletContext().getAttribute(ATTR_APPLICATION_MODEL);root.put(FreeerServlet.KEY_APPLICATION, servletContextHashModel);root.put(FreeerServlet.KEY_REQUEST, new HttpRequestHashModel(request, response, cfg.getObjectWrapper()));StringWriter writer = new StringWriter();template.process(root, writer); 没看出什么错误难道是你include的页面太大了?不可能吧。一般不会出问题的。等大牛来回答吧 贴 /includes/header.ftl 还有所有它引用(递归)的模板贴完整代码怀疑模板引用里有循环引用 我试了include一个ftl或include一个action都不行,单独执行都没问题的,我再简化试试PS,我include的header.ftl,在我工程中其它所有地方使用正常的free,action的流程都都用到,都没问题,只在直接调用process才有问题 我把header.ftl简化到<script language="javascript">alert('f');</script>还是一样的错误 在displaytag中 我想判断(c:if)某一列是否为0,为0则不显示 不为0则显示其值 要怎么实现 如何将字符串解析成一个XML文档?(J2SE) Struts1 配置tomcat不能启动 错误信息如下 js如何搞这个 Java客户端打包问题 不会下载!!! 在weblogic8.1里出现很奇怪的问题,解决马上给分。代码如下: struts配置问题! 深入探讨J2EE在项目中开发中的实际价值 请问谁做过OFD格式文件的或者了解的 急:FileTransferClient下载文件,报ControlChannelIOException超时 数据库中计算时间问题
cfg.setTemplateLoader(new StringTemplateLoader(cgisOutputTemplate.getOutCode()));
cfg.setDefaultEncoding("UTF-8");
Template template = cfg.getTemplate("");
Map root = new HashMap();// 得到模板代码
String outCode = cgisOutputTemplate.getOutCode();
root.put("Request", request);
root.put("Session", request.getSession());
root.put("JspTaglibs", new TaglibFactory(request.getSession().getServletContext()));
ServletContextHashModel servletContextHashModel = (ServletContextHashModel) request.getSession()
.getServletContext().getAttribute(ATTR_APPLICATION_MODEL);
root.put(FreeerServlet.KEY_APPLICATION, servletContextHashModel);
root.put(FreeerServlet.KEY_REQUEST, new HttpRequestHashModel(request, response, cfg.getObjectWrapper()));StringWriter writer = new StringWriter();
template.process(root, writer);
没看出什么错误难道是你include的页面太大了?不可能吧。一般不会出问题的。
等大牛来回答吧
贴完整代码怀疑模板引用里有循环引用
alert('f');
</script>还是一样的错误