我一直试图帮助我的一位同事解决Alfresco定制数据主义者的问题。我们正在使用Alfresco Community 5.0.d
我们有一个自定义数据列表,其中一个字段中有一个复选框。
双方的代码看起来和我们一样......文件checkbox.ftl在两个地方都在同一个地方,而且它是完全相同的文件。我们还重建了指数,以防万一我认为在这种情况下它是不必要的。除复选框外,所有datalist都能正常工作。我们已经看到'输入类型="复选框"'不在生产方生成的视图中。我们不知道在哪里看。我即将复制所有修改/添加的文件。如果您需要任何额外信息,请告诉我,我很乐意提供。
在测试环境中,我们设法使用以下代码使其工作:
<model name="datos:datosModel"
xmlns="http://www.alfresco.org/model/dictionary/1.0">
<!-- Optional meta-data about the model -->
<description>Custom Datalist</description>
<author>Maria Royo</author>
<version>1.0</version>
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
<!--Import Alfresco Data List Model Definitions -->
<import uri="http://www.alfresco.org/model/datalist/1.0" prefix="dl"/>
</imports>
<!-- Introduction of new namespaces defined by this model -->
<!-- NOTE: The following namespace custom.model should be changed to reflect your own namespace -->
<namespaces>
<namespace uri="datos.datosModel" prefix="datos"/>
</namespaces>
<!-- Tipo de dato combobox -->
<!-- Scope-->
<constraints>
<constraint name="datos:Scope" type="LIST">
<parameter name="allowedValues">
<list>
<value>ESA</value>
<value>IOT</value>
<value>Internal</value>
</list>
</parameter>
</constraint>
</constraints>
<types>
<!-- Data list defintions For this model go here -->
<type name="datos:datosTabla">
<title>Document Library</title>
<description>Document Library del EMIS</description>
<parent>dl:dataListItem</parent>
<properties>
<property name="datos:datosID">
<title>Reference</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosTitle">
<title>Title</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosVersions">
<title>Versions</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosIncr">
<title>Increment</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosUpdate">
<title>Last Update</title>
<type>d:date</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosDRD">
<title>DRD Reference</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosScope">
<title>Scope</title>
<type>d:text</type>
<mandatory>false</mandatory>
<constraints>
<constraint ref="datos:Scope" />
</constraints>
</property>
<property name="datos:datosRemarks">
<title>Remarks</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<!-- Type Checkbox -->
<property name="datos:datosDel">
<title>Delivered</title>
<description>Active</description>
<type>d:boolean</type>
</property>
</properties>
<associations>
<association name="datos:datosAttachments">
<title>Link</title>
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:cmobject</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</type>
</types>
这是我们在生产环境中的代码:
<model name="datos:datosModel"
xmlns="http://www.alfresco.org/model/dictionary/1.0">
<!-- Optional meta-data about the model -->
<description>Custom Datalist</description>
<author>Maria Royo</author>
<version>1.0</version>
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
<!--Import Alfresco Data List Model Definitions -->
<import uri="http://www.alfresco.org/model/datalist/1.0" prefix="dl"/>
</imports>
<!-- Introduction of new namespaces defined by this model -->
<!-- NOTE: The following namespace custom.model should be changed to reflect your own namespace -->
<namespaces>
<namespace uri="datos.datosModel" prefix="datos"/>
</namespaces>
<!-- Tipo de dato combobox -->
<!-- Scope-->
<constraints>
<constraint name="datos:Scope" type="LIST">
<parameter name="allowedValues">
<list>
<value>ESA</value>
<value>IOT</value>
<value>Internal</value>
</list>
</parameter>
</constraint>
</constraints>
<types>
<!-- Data list defintions For this model go here -->
<type name="datos:datosTabla">
<title>E-USOC Document Library</title>
<description>E-USOC Document Library</description>
<parent>dl:dataListItem</parent>
<properties>
<property name="datos:datosID">
<title>Reference</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosTitle">
<title>Title</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosVersions">
<title>Versions</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosIncr">
<title>Increment</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosUpdate">
<title>Last Update</title>
<type>d:date</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosDRD">
<title>DRD Reference</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<property name="datos:datosScope">
<title>Scope</title>
<type>d:text</type>
<mandatory>false</mandatory>
<constraints>
<constraint ref="datos:Scope" />
</constraints>
</property>
<property name="datos:datosRemarks">
<title>Remarks</title>
<type>d:text</type>
<mandatory>false</mandatory>
</property>
<!-- Type Checkbox -->
<property name="datos:datosDel">
<title>Delivered</title>
<description>Delivered</description>
<type>d:boolean</type>
</property>
</properties>
<associations>
<association name="datos:datosAttachments">
<title>Link</title>
<source>
<mandatory>false</mandatory>
<many>true</many>
</source>
<target>
<class>cm:cmobject</class>
<mandatory>false</mandatory>
<many>true</many>
</target>
</association>
</associations>
</type>
</types>
两个文件都位于同一目录中:
/alfresco-5.0.d/tomcat/shared/classes/alfresco/extension
此外,我们在:
中包含此代码/alfresco-5.0.d/tomcat/shared/classes/alfresco/web-extension/share_config_custom.xml
在测试环境中,代码如下:
<config evaluator="model-type" condition="datos:datosTabla">
<forms>
<!-- Create item form -->
<form>
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
<create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
<appearance>
<field id="datos:datosID">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosTitle">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosAttachments">
<control>
<control-param name="startLocation">{doclib}</control-param>
</control>
</field>
<field id="datos:datosVersions">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosIncr">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosUpdates">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosDRD">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosScope">
<control template="/org/alfresco/components/form/controls/selectone.ftl" />
</field>
<field id="datos:datosDel">
<control template="/org/alfresco/components/form/controls/checkbox.ftl" />
</field>
<field id="datos:datosRemarks">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
</appearance>
</form>
<!--Data Grid view-->
<form id="datagrid">
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
</form>
</forms>
</config>
<!-- Edit view -->
<config evaluator="node-type" condition="datos:datosTabla">
<forms>
Edit marketing item form
<form>
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
<create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
<appearance>
<field id="datos:datosID">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosTitle">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosAttachments">
<control>
<control-param name="startLocation">{doclib}</control-param>
</control>
</field>
<field id="datos:datosVersions">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosIncr">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosUpdates">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosDRD">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosScope">
<control template="/org/alfresco/components/form/controls/selectone.ftl" />
</field>
<field id="datos:datosDel">
<control template="/org/alfresco/components/form/controls/checkbox.ftl" />
</field>
<field id="datos:datosRemarks">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
</appearance>
</form>
</forms>
</config>
最后是生产环境中的代码:
<config evaluator="model-type" condition="datos:datosTabla">
<forms>
<!-- Create item form -->
<form>
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
<create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
<appearance>
<field id="datos:datosID">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosTitle">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosAttachments">
<control>
<control-param name="startLocation">{doclib}</control-param>
</control>
</field>
<field id="datos:datosVersions">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosIncr">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosUpdates">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosDRD">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosScope">
<control template="/org/alfresco/components/form/controls/selectone.ftl" />
</field>
<field id="datos:datosDel">
<control template="/org/alfresco/components/form/controls/checkbox.ftl" />
</field>
<field id="datos:datosRemarks">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
</appearance>
</form>
<!--Data Grid view-->
<form id="datagrid">
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
</form>
</forms>
</config>
<!-- Edit view -->
<config evaluator="node-type" condition="datos:datosTabla">
<forms>
<!-- Edit marketing item form -->
<form>
<field-visibility>
<show id="datos:datosID" />
<show id="datos:datosTitle" />
<show id="datos:datosAttachments" />
<show id="datos:datosVersions" />
<show id="datos:datosIncr" />
<show id="datos:datosUpdate" />
<show id="datos:datosDRD" />
<show id="datos:datosScope" />
<show id="datos:datosDel" />
<show id="datos:datosRemarks" />
</field-visibility>
<create-form template="/org/alfresco/components/data-lists/forms/dataitem.ftl" />
<appearance>
<field id="datos:datosID">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosTitle">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosAttachments">
<control>
<control-param name="startLocation">{doclib}</control-param>
</control>
</field>
<field id="datos:datosVersions">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosIncr">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosUpdates">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosDRD">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="datos:datosScope">
<control template="/org/alfresco/components/form/controls/selectone.ftl" />
</field>
<field id="datos:datosDel">
<control template="/org/alfresco/components/form/controls/checkbox.ftl" />
</field>
<field id="datos:datosRemarks">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
</appearance>
</form>
</forms>
</config>