未找到当前内容 magnolia 5.7.9 的模板定义

Posted

技术标签:

【中文标题】未找到当前内容 magnolia 5.7.9 的模板定义【英文标题】:No template definition found for the current content magnolia 5.7.9 【发布时间】:2021-03-18 16:55:35 【问题描述】:

我在 Magnolia 5.7.9 中创建了一个新组件,在 /templates/components 中创建了 placeholder.ftl 和 placeholder.yaml,我可以在模块资源文件下正确看到它们。

placeholder.yaml:

title: Placeholder
renderType: freemarker
templateScript: /xxx-module-versioning/templates/components/placeholder.ftl

placeholder.ftl

<p>Hello World! I'm a Placeholder Component.</p>

这是我以编程方式创建的 JCR 中的组件:

当这个特定组件渲染时,它会给出一个渲染错误:info.magnolia.rendering.engine.RenderException: No template definition found for the current content

原因: info.magnolia.config.registry.Registry$NoSuchDefinitionException: /xxx-module-versioning/templates/components/placeholder.ftl 在 info.magnolia.config.registry.AbstractRegistry.getProvider(AbstractRegistry.java:136) ~[magnolia-configuration-5.7.9.jar:?]

此配置有什么我遗漏或做错了吗?

【问题讨论】:

【参考方案1】:

mgnl:template 的值不应该是脚本,而是模板定义,所以类似于xxx-module-versioning:components/placeholder。更多详情请见templating documentation。

【讨论】:

以上是关于未找到当前内容 magnolia 5.7.9 的模板定义的主要内容,如果未能解决你的问题,请参考以下文章

从 FS magnolia 5.7.9 加载模块配置文件

未找到 Magnolia 的 Gradle 依赖项

营销标签未在 Magnolia 页面中呈现内容

ModuleDependencyException:Module Magnolia Standard Templating Kit(1.4.4 版)依赖于 dms 1.5/* 版,未找到

保存/取消对话框按钮未显示在 Magnolia 对话框中

Magnolia CMS Content App 多值和复合字段错误