从alfresco存储库

时间:2017-08-23 15:51:11

标签: java web-services templates alfresco

我有一个存储在alfresco存储库中的ftl模板文件。此文件的路径为:/app:company_home/app:dictionary/cm:StarXpert_x0020_Workflow/cm:templates/cm:contentModelTemplate.ftl

我想使用此FTL文件创建XML文件。在我的java支持的webscript控制器中,我想获取FTL文件,我使用了很多方法来实现这一点,但没有任何作用。 我试过这段代码:

Template template=cfg.getTemplate("PATH:\"/app:company_home/app:dictionary/cm:StarXpert_x0020_Workflow/cm:templates/cm:contentModelTemplate.ftl\"");

但我仍然收到此错误:

  

java.io.FileNotFoundException:Template" contentModelTemplate.ftl"不   结果

我还尝试通过将nodeRef作为getTemplate()方法的引用来获取模板,但它也不起作用。

以前是否有人这样做过?谢谢你的任何发言。

2 个答案:

答案 0 :(得分:4)

如果目标是让您的Web脚本使用转换的XML文件进行响应,那么为什么不利用Web脚本本身进行此转换?

为此,将Freemarker模板从数据字典中的当前主页移动到您的Web脚本中(我不知道您是使用存储库部署的Web脚本还是使用类路径部署的Web脚本 - 它不会'做出功能差异。)

然后,您的Java支持的Web脚本将获取数据并将其放入模型中。

Freemarker模板将自动用于使用模型中的数据呈现XML响应。

答案 1 :(得分:0)

您需要使用serachService来检索驻留在alfresco存储库中的文件。 以下链接将帮助您使用searchService。

Alfresco Solr SearchService.query() error parsing Xpath