[Résolu] Création de modèle personnalisé

cancel
Showing results for 
Search instead for 
Did you mean: 
tchabaud
Member II

[Résolu] Création de modèle personnalisé

Bonjour, je suis en train d'essayer de créer un modèle personnalisé en suivant les indications de la documentation, mais je n'arrive pas à faire apparaitre les propriétés que j'ai définies dans l'interface web. Je n'ai pas d'erreur dans les logs au lancement d'Alfresco.

Voici le contenu des fichiers xml :

    customModel.xml

<?xml version="1.0" encoding="UTF-8"?>
<model name="custom:customModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
    <description>Custom Model</description>
    <author>Me</author>
    <version>1.0</version>
    <imports>
        <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"></import>
        <import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"></import>                    
    </imports>
   
    <namespaces>
        <namespace uri="custom.model" prefix="custom"></namespace>
    </namespaces>

    <types>
        <type name="custom:doc">
            <title>My Document</title>
            <parent>cm:content</parent>
            <associations>
                <association name="custom:relatedDocuments">
                    <title>Documents associes</title>
                    <source>
                        <mandatory>false</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>custom:doc</class>
                        <mandatory>false</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
            <mandatory-aspects>
                <aspect>cm:versionable</aspect>
            </mandatory-aspects>
        </type>
    </types>

    <aspects>
        <aspect name="custom:productRelated">
            <title>Donnees produit</title>
            <properties>
                <property name="custom:product">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
                <property name="custom:version">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
            </properties>
        </aspect>
    </aspects>
</model>

    web-client-config-custom.xml

<alfresco-config>
   <!– Example of adding languages to the list in the login page –>
   <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>
         <language locale="da_DK">Danish</language>
         <language locale="de_DE">German</language>
         <language locale="es_ES">Spanish</language>
         <language locale="el_GR">Greek</language>
         <language locale="fi_FI">Finnish</language>
         <language locale="fr_FR">French</language>
         <language locale="it_IT">Italian</language>
         <language locale="ja_JP">Japanese</language>
         <language locale="du_NL">Dutch</language>
         <language locale="pl_PL">Polish</language>
         <language locale="pt_PT">Portuguese</language>
         <language locale="pt_BR">Portuguese (Brazilian)</language>
         <language locale="ru_RU">Russian</language>
         <language locale="sv_SV">Swedish</language>
         <language locale="tr_TR">Turkish</language>
         <language locale="zh_CN">Simplified Chinese</language>
      </languages>
   </config>

    <config evaluator="aspect-name" condition="custom:productRelated">
        <property-sheet>
            <show-property name="custom:product" display-label-id="produit" />
            <show-property name="custom:version" display-label-id="version" />
            <show-association name="custom:relatedDocuments" />
        </property-sheet>
    </config>
   
    <config evaluator="node-type" condition="custom:productRelated">
      <property-sheet>
          <show-property name="custom:product" display-label-id="produit" />
          <show-property name="custom:version" display-label-id="version" />
          <show-association name="custom:relatedDocuments" />
      </property-sheet>
   </config>
</alfresco-config>

Est ce qu'une âme charitable pour m'expliquer ce qui cloche ? Merci d'avance.
4 Replies
cleseach
Active Member II

Re: [Résolu] Création de modèle personnalisé

Avez-vous rennomé
custom-model-context.xml.sample
en
custom-model-context.xml


Ce fichier permet la prise en compte de customModel.xml au démarrage du système.

Cordialement,

Charles Le Seac'h
tchabaud
Member II

Re: [Résolu] Création de modèle personnalisé

Oui, je l'ai bien renommé, et voici son contenu :

<?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/customModel.xml</value>
            </list>
        </property>
    </bean>
</beans>

Je me suis également aperçu que j'avais une petite erreur de namespace avec mes fichiers précédents, je l'ai donc corrigée. J'ai aussi remplacé ma propriété "version" par "client" pour éviter les conflits avec la propriété "version" existante.
Voilà mes fichiers de configuration :
customModel.xml

<?xml version="1.0" encoding="UTF-8"?>
<model name="myns:myModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
    <description>Custom Model</description>
    <author>Me</author>
    <version>1.0</version>

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

    <types>
    <type name="myns:doc">
            <title>My Document</title>
            <parent>cm:content</parent>
            <associations>
                <association name="myns:relatedDocuments">
                    <title>Documents associes</title>
                    <source>
                        <mandatory>false</mandatory>
                        <many>true</many>
                    </source>
                    <target>
                        <class>myns:doc</class>
                        <mandatory>false</mandatory>
                        <many>true</many>
                    </target>
                </association>
            </associations>
            <mandatory-aspects>
                <aspect>cm:versionable</aspect>
            </mandatory-aspects>
        </type>
    </types>
    <aspects>
        <aspect name="myns:productRelated">
            <title>Donnees produit</title>
            <properties>
                <property name="myns:product">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
                <property name="myns:client">
                    <type>d:text</type>
                    <mandatory>true</mandatory>
                </property>
            </properties>
        </aspect>
    </aspects>
</model>

web-client-config-custom.xml

<alfresco-config>
   <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>
         <language locale="da_DK">Danish</language>
         <language locale="de_DE">German</language>
         <language locale="es_ES">Spanish</language>
         <language locale="el_GR">Greek</language>
         <language locale="fi_FI">Finnish</language>
         <language locale="fr_FR">French</language>
         <language locale="it_IT">Italian</language>
         <language locale="ja_JP">Japanese</language>
         <language locale="du_NL">Dutch</language>
         <language locale="pl_PL">Polish</language>
         <language locale="pt_PT">Portuguese</language>
         <language locale="pt_BR">Portuguese (Brazilian)</language>
         <language locale="ru_RU">Russian</language>
         <language locale="sv_SV">Swedish</language>
         <language locale="tr_TR">Turkish</language>
         <language locale="zh_CN">Simplified Chinese</language>
      </languages>
   </config>
  
    <config evaluator="aspect-name" condition="myns:productRelated">
        <property-sheet>
            <show-property name="myns:product" display-label-id="produit" />
            <show-property name="myns:client" display-label-id="client" />
            <show-association name="myns:relatedDocuments" />
        </property-sheet>
    </config>
   
    <config evaluator="node-type" condition="myns:productRelated">
      <property-sheet>
          <show-property name="myns:product" display-label-id="produit" />
          <show-property name="myns:client" display-label-id="client" />
          <show-association name="myns:relatedDocuments" />
      </property-sheet>
   </config>

      <config evaluator="string-compare" condition="Content Wizards">
         <content-types>
            <type name="myns:doc" />
         </content-types>
      </config>

    <config evaluator="string-compare" condition="Action Wizards">
      <aspects> 
          <aspect name="myns:productRelated" display-label="myns Classification" display-label-id="myns_classification"/>        
      </aspects>
      <subtypes>
         <type name="myns:doc" />
      </subtypes>     
        <specialise-types>
         <type name="myns:doc" />        
      </specialise-types>     
   </config>  

   <config evaluator="string-compare" condition="Advanced Search">
      <advanced-search>
         <content-types>
            <type name="myns:doc" />           
         </content-types>
         <custom-properties>
            <meta-data aspect="myns:productRelated" property="myns:product" display-label-id="product" />
            <meta-data aspect="myns:productRelated" property="myns:client" display-label-id="client" />
         </custom-properties>
      </advanced-search>
   </config>
</alfresco-config>

Mais les propriétés personnalisées n'apparaissent toujours pas :-\
Je ne vois vraiment pas ce qui cloche.

Merci d'avance pour votre aide.
cleseach
Active Member II

Re: [Résolu] Création de modèle personnalisé

A mon avis, la ligne qui pose problème est celle-ci  (dans le fichier web-client-config…) :
<config evaluator="node-type" condition="myns:productRelated">

mynsSmiley TongueroductRelated est le nom de votre aspect, pas de votre type.


Charles Le Seac'h
tchabaud
Member II

Re: [Résolu] Création de modèle personnalisé

Merci beaucoup, c'était ça :-)