1

我想向 plone 4 产品添加一个简单的样式表。因此我添加了

<browser:resourceDirectory
    name="groovecubes.portlet.gallery.css"
    directory="css"
    />

到 [产品目录]/browser/configure.zcml,我应该启用它以使用以下语法浏览此文件夹中的样式表:++resource++groovecubes.portlet.gallery.css/mycss.css。但事实并非如此。即使在扩建之后也没有。

因此,找不到 [product dir]/profiles/default/cssregistry.xml 中的每个声明。我错过了什么?是包名吗?

包 main configure.zcml 包含该行

 <include package=".browser" />

应该执行 browser/configure.zcml

但不是。我粘贴了包configure.zcmlbrowser/configure.zcml

更新二:

它变得更加奇怪。当我修改文件头browser/configure.zcml时,当我尝试启动实例时被识别为格式错误。但是当我修改相关条目时,启动继续正常。

更新三:

我现在已经测试了各种东西,但我发现,.zcml文件中的任何格式错误的标签都会被 SaxParser 忽略。在我的开发和生产实例(Plone 4.2 / Plone 4.1)上的每个产品中。这可能是一个新功能吗,我可能错过了?

更新四:

已解决:我删除了browser/configure.zcml意外使用相同名称的接口声明。这使我的 .css 可用。但我仍然想知道所描述的解析器行为。

4

1 回答 1

2

您声明了名称groovecubes.portlet.gallery.css,但尝试访问它++resource++groovecubes.portlet.gallery(注意那里的缺失.css)。

从注册中使用++resource++groovecubes.portlet.gallery.css/mycss.css或删除该.css部分。resourceDirectory

如果这只是一个错字,请检查 ZCML 文件是否实际正在加载;如果名称匹配,注册本身就很好。

于 2012-09-10T14:27:08.387 回答