AnsweredAssumed Answered

Ajouter un aspect

Question asked by nyakooza on Jun 26, 2008
Latest reply on Nov 27, 2008 by jayjayecl
Bonjour,

je souhaiterai avoir deux aspects versionables différents: un automatique et un non-automatique.
Je souhaiterai donc ajouter tout simplement au fichier ContentModel.xml existant le code suivant (et rajouter les lignes nécessaires au fichier web-client-config-custom.xml) :
     <aspect name="cm:versionable2">
         <title>Versionable2</title>
         <properties>
            <property name="cm:versionLabel">
               <title>Version Label</title>
               <type>d:text</type>
               <protected>true</protected>
            </property>
            <property name="cm:initialVersion">
               <title>Initial Version</title>
               <type>d:boolean</type>
               <default>true</default>
            </property>
            <property name="cm:autoVersion">
               <title>Auto Version</title>
               <type>d:boolean</type>
               <default>false</default>
            </property>
          </properties>
      </aspect>

en consultant les liens http://wiki.alfresco.com/wiki/Data_Dictionary_Guide#Step_by_Step_Model_Definition et http://ecmarchitect.com/images/articles/alfresco-content/content-article.pdf, si j'ai bien compris, même pour ajouter un simple aspect, je dois redéfinir complètement un nouveau modèle? ainsi qu'un nouveau fichier custom-context.xml?
dois-je redéfinir l'intégralité de ces fichiers ou juste les balises dont j'ai besoin?

voici mon fichier custom-context.xml situé dans le répertoire \alfresco\tomcat\shared\classes\alfresco\extension
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>
    <!– Registration of new models –>
    <bean id="extension.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
        <property name="models">
            <list>
                <value>alfresco/extension/customContentModel.xml</value>
            </list>
        </property>
    </bean>
</beans>

et un extrait de mon customContentModel.xml
<model name="cm:contentmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">

   <description>Alfresco Content Domain Model</description>
   <author>Alfresco</author>
   <published>2005-09-29</published>
   <version>1.0</version>

   <imports>
      <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
      <import uri="http://www.alfresco.org/model/system/1.0" prefix="sys"/>
   </imports>
  
   <namespaces>
      <namespace uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
   </namespaces>

   <constraints>
      <constraint name="cm:filename" type="REGEX">
         <parameter name="expression"><value><![CDATA[(.*[\"\*\\\>\<\?\/\:\|]+.*)|(.*[\.]?.*[\.]+$)|(.*[ ]+$)]]></value></parameter>
         <parameter name="requiresMatch"><value>false</value></parameter>
      </constraint>
      <constraint name="cm:userNameConstraint" type="org.alfresco.repo.dictionary.constraint.UserNameConstraint" />
   </constraints>
  
   <types>
  
      <type name="cm:cmobject">
         <title>Object</title>
         <parent>sys:base</parent>
         <properties>
            <property name="cm:name">
               <title>Name</title>
               <type>d:text</type>
               <mandatory enforced="true">true</mandatory>
               <constraints>
                  <constraint ref="cm:filename" />
               </constraints>
            </property>
         </properties>
         <mandatory-aspects>
            <aspect>cm:auditable</aspect>
         </mandatory-aspects>
      </type>

………..
………..
………..
           
   </types>
  
  
   <aspects>
  
      <aspect name="cm:titled">
         <title>Titled</title>
         <properties>
            <property name="cm:title">
               <title>Title</title>
               <type>d:mltext</type>
            </property>
            <property name="cm:description">
               <title>Description</title>
               <type>d:mltext</type>
            </property>
         </properties>
      </aspect>

……….
……….
……….
 
      <aspect name="cm:versionable">
         <title>Versionable</title>
         <properties>
            <property name="cm:versionLabel">
               <title>Version Label</title>
               <type>d:text</type>
               <protected>true</protected>
            </property>
            <property name="cm:initialVersion">
               <title>Initial Version</title>
               <type>d:boolean</type>
               <default>true</default>
            </property>
            <property name="cm:autoVersion">
               <title>Auto Version</title>
               <type>d:boolean</type>
               <default>true</default>
            </property>
          </properties>
      </aspect>
    
<aspect name="cm:versionable2">
         <title>Versionable2</title>
         <properties>
            <property name="cm:versionLabel">
               <title>Version Label</title>
               <type>d:text</type>
               <protected>true</protected>
            </property>
            <property name="cm:initialVersion">
               <title>Initial Version</title>
               <type>d:boolean</type>
               <default>true</default>
            </property>
            <property name="cm:autoVersion">
               <title>Auto Version</title>
               <type>d:boolean</type>
               <default>false</default>
            </property>
          </properties>
      </aspect>
……..
………
………

   </aspects>

</model>

même en utilisant cette méthode j'obtiens des erreurs au démarrage d'alfresco.
Qqun aurait-il compris d'où provient mon erreur?

Cordialement,
Michel

Outcomes