循环包含问题

在CommonTemplate( http://www.commontemplate.org)中,

内嵌模板指令 $inline{"xxx.ctl"} 相当于JSP中的 <%@include file="xxx.jsp"%>

包含模板指令 $include{"xxx.ctl"} 相当于JSP中的 <jsp:include page="xxx.jsp"/>

当a模板内嵌(或包含)b模板,同时b模板又内嵌(或包含)a模板,也有可能不只两个模板,只要形成环路,就会出现死循环。

内嵌模板时,因为共享上下文,可以通过查找已有的包含路径来检测循环,及时抛错(0.7.1以后版本已加入检测)。

但包含模板时,因为只包含输出(在不同的上下文运行),无法获取更多信息,死循环比较难检测,结果会出错内容爆炸。

还没想到好的解决方案...

btw: 不知jsp:include是否存在同样的问题?

你可能感兴趣的:(jsp,commontemplate)