我已经创建了一个组件,我想在文档详细信息页面上显示该组件,只有文档具有某个方面,所以我尝试使用评估器。我在custom-slingshot-application-context.xml
<bean id="evaluator.doclib.metadata.hasInvoiceAspect"
parent="evaluator.doclib.action.propertyNotNull">
<property name="property" value="inv:invoice"/>
</bean>
在document-details.xml
我添加了此
<component>
<region-id>custom-comp</region-id>
<sub-components>
<sub-component id="default">
<evaluations>
<evaluation>
<evaluators>
<evaluator type="evaluator.doclib.metadata.hasInvoiceAspect"/>
</evaluators>
<url>/components/custom/custom-comp</url>
</evaluation>
</evaluations>
</sub-component>
</sub-components>
</component>
我想我错过了一些东西,因为组件没有显示出来。我有两个名为custom-slingshot的文件,我尝试了tomcat/shared/classes/alfresco/web-extension
和tomcat/webapps/share/WEB-INF/classes/alfresco/web-extension
。
我完全错了吗?有可能达到我想要的那样吗?我该怎么办?
答案 0 :(得分:2)
有一个预定义的评估程序,用于检查节点是否具有名为 evaluator.doclib.action.hasAspect 的方面。您只需要使用此评估程序作为父项创建一个bean,并在属性中提供要检查的方面:
*添加到web-extension中的某些-context.xml
$string = 'class="total">5.00</td>';
$new_number = 7.00;
echo preg_replace('#(?=class="total">).+?(?=</td>)#', $new_number, $string);
然后你将DocLibActions配置中的bean引用到* extension-modules.xml(web-extension / site-data / extensions)......
<bean id="my.custom.evaluator" parent="evaluator.doclib.action.hasAspect">
<property name="aspects">
<list>
<value>my:hasInvoiceAspect</value>
</list>
</property>
</bean>
瞧。
有关predefined evaluators的更多信息。 好样本项目here。