我正在尝试在使用Javascript API 的方法 proccessTemplate ( http://wiki.alfresco.com/wiki/4.0_JavaScript_API#Transformation_API )处理的 freemarker 模板中使用一个简单的<#include "anotherFile.ftl"/>针对特定节点。
它似乎不喜欢包含?!
错误信息如下
包装异常(带状态模板):04305890 无法执行脚本“classpath *:alfresco/extension/templates/webscripts/myPath/myWebscript.get.js”:04305889 处理模板时出错“读取包含的文件字符串时出错:// fooy/foo.ftl'。请联系您的系统管理员。
正在处理的模板和可能包含的模板将存储在 Alfresco 的存储库之外,但现在它在里面。webscripts 也将在存储库之外和 Java 类路径内。
我试图包含 ftl,即使它在同一个目录中,但这不起作用。我试图获得一个 node.nodeRef (成功),但实际的包含不起作用,尽管这意味着将 ftl 存储在存储库中,我们无论如何都不会这样做。
我确实尝试在实际的 webscripts freemarker 本身上包含 ftl,但当然 node.processTemplate 在传递给 webscript freemarker 模板之前发生在 javascript 控制器中
我什至尝试对包含的内容进行硬编码并将其传递到 args 关联数组中,但正如预期的那样,它不起作用。
进一步调查表明这是一个错误 https://issues.alfresco.com/jira/browse/ALFCOM-3364
如果有人克服了这个问题,欢迎提出任何其他建议。
谢谢