我正在尝试 alfresco 4.2c 。
我正在努力学习露天定制。 有人可以解释这个xml标签的作用:
<config evaluator="string-compare" condition="yy">
...
...
</config>
条件部分是否正在检查具有yy设置的配置文件? 配置文件是哪个,哪里可以找到?
还有其他 s 我还需要了解。很抱歉,如果这太基础了,但我不能继续阅读并理解其他露天文档而没有先了解这一点。
我很可能错过了解释这些问题的文档,请有更多知识渊博的人指导我解释这些问题的相关文档。 (我从一个文档跳到另一个文档而没有真正理解这些。)
答案 0 :(得分:4)
配置评估程序在Alfresco中用于覆盖和自定义用户界面,只需修改xml文件。
据报道here
在此文件中,是一个赋值元素 用于定位元素以进行自定义。这些评估员是 由SpringSurfXmlConfigService管理。此服务延长 Alfresco Web客户端框架包含以下默认值 评估:
- 由StringEvaluator
定义的字符串比较- NodeTypeEvaluator
定义的节点类型- TaskTypeEvaluator
定义的任务类型- 由AspectEvaluator
定义的方面- ObjectTypeEvaluator
定义的对象类型
几乎所有以后缀&#34; -config.xml
&#34;结尾的配置文件包含像你提到的那样的配置部分。
配置服务使用合并方法。一个对象是 作为上下文给出并执行查找以检索所有 与该对象匹配的配置。
有几种可以使用的内置评估器,即 &#39;字符串比较&#39;和&#39;对象类型&#39;其他自定义评估者可以 通过在配置文件的顶部指定它们来插入(请参阅 例子如下)。调用所有已配置的评估程序并将其传递给 上下文对象。如果评估者匹配该配置的部分是 添加到结果中。
匹配的所有部分合并为一个结果,这样可以罚款 粒度配置方法,也允许覆盖 配置数据。但是,这确实意味着配置 对文件中定义的事物敏感,基本上就是 最后一项获胜。
这个&#39;查找&#39;但是,算法也可以定制和插入 在执行配置查找时。
这意味着只要加载了应用程序上下文,就会注册许多对象,并且您可以在condition
属性中添加/修改这些对象的配置设置要修改的对象
例如,如果您查看web-client-config-custom.xml
文件,您会看到有一个语言部分,其中包含要在登录页面上显示的语言。
如果要在列表中添加更多语言,您只需在此列表中添加条目:
<config evaluator="string-compare" condition="Languages">
<languages>
<language locale="ca_ES">Catalan</language>
<language locale="hr_HR">Croatian</language>
<language locale="cs_CZ">Czech</language>
</languages>
</config>
从application-context.xml
文件开始,您会发现它包含更具体的*-context.xml
个文件,导致the web-client-config.xml
文件包含<element-reader element-name="languages" class="org.alfresco.web.config.LanguagesElementReader" />
以阅读语言部分。< / p>
更多示例可以在Web Client Customisation Guide
中找到一般来说,您应该查看官方的Alfresco文档,即使这个Config Service wiki post有点过时,它也可以帮助您理解即使在较新版本中也没有太大变化的机制。