[Résolu]Mettre un type aux documents

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

Re: [Résolu]Mettre un type aux documents

Merci pour les sources modifiant les catégories lors du premier boot. Ça marche vraiment bien!

Au final, je pense que je vais utiliser les catégories pour définir les type des chacun de mes documents.

par contre pour les meta données supplémentaires à remplir je ne sais pas vraiment comment faire.

La solution de créer un nouveau content Types ne me semble pas la bonne car l'utilisateur devra le sélectionner dans la liste déroulante. L'idéal serai de pouvoir directement ajouter ces nouveaux champs au type "content" déjà prédéfini, ou faire quelque chose de similaire à savoir redéfinir un nouveau type basé sur "content" et que "content" ne soit pas visible dans la liste déroulante…

Si tu as des métadonnées communes à plusieurs types, tu peux définir ces métadonnées au sein d'un ou plusieurs aspects, puis référencer ses aspects en tant que mandatory-aspects, exemple :

De quel(s) fichier(s) s'agit-il?
rguinot
Customer

Re: [Résolu]Mettre un type aux documents

Tu dois déclarer dans ton modèle personnalisé. voir exampleModel.xml dans le répertoire d'extension et sur le wiki pour plus d'infos.
denisr
Member II

Re: [Résolu]Mettre un type aux documents

Bonjour,
En recherchant le moyen de prédéfinir en masse un arbre de categories sans passer par l'interface d'administration je suis tombé sur ce post qui a l'air de répondre à mon problème.
J'ai juste besoin d'éclaircir quelques points avant d'implémenter cette solution:

Le fichier custom-bootstrap-context.xml contenant la section :

             <props>
                <prop key="path">/</prop>
                <!–prop key="location">alfresco/bootstrap/categories.xml</prop–>
                <prop key="location">alfresco/extension/bootstrap/custom-categories.xml</prop>
             </props>

Mais aussi beaucoup d'autres sections qui ne concernent pas mon problème et qui ont l'air de définir des importations assez sensibles.

Ce qui me laisse penser que la section:
<bean id="spacesBootstrap" parent="spacesStoreImporter">
contenue dans le fichier alfresco/extension/custom-bootstrap-context.xml  annule et remplace celle du fichier WEB-INF/classes/alfresco/bootstrap-context.xml.

:?: Est-ce bien le cas?
:?: Question subsidiaire: les autres <beans> définis dans le fichier WEB-INF/classes/alfresco/bootstrap-context.xml seront-elles impactées?

Cordialement,
DenisR
rguinot
Customer

Re: [Résolu]Mettre un type aux documents

1) Oui
2) Non
denisr
Member II

Re: [Résolu]Mettre un type aux documents

Smiley Happy Merci.

Bon, là j'ai du rater un truc.

Je suis en 2.11E RHEL3

Mon fichier :
tomcat/shared/classes/alfresco/extension/custom-bootstrap-context.xml contient (c'est une recopie du votre):
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>

    <bean id="spacesBootstrap" parent="spacesStoreImporter">
       <property name="bootstrapViews">
          <list>
             <props>
                <prop key="path">/</prop>
                <prop key="location">alfresco/bootstrap/spaces.xml</prop>
                <prop key="messages">alfresco/messages/bootstrap-spaces</prop>
             </props>
             <props>
                <prop key="path">/</prop>
                <prop key="location">alfresco/bootstrap/system.xml</prop>
             </props>
             <props>
                <prop key="path">/</prop>
                <!–prop key="location">alfresco/bootstrap/categories.xml</prop–>
                <prop key="location">alfresco/extension/bootstrap/custom-categories.xml</prop>
             </props>
             <props>
                <prop key="path">/</prop>
                <prop key="location">alfresco/bootstrap/multilingualRoot.xml</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.guest_home.childname}</prop>
                <prop key="location">alfresco/bootstrap/tutorial.xml</prop>
                <prop key="messages">alfresco/messages/bootstrap-tutorial</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.templates.childname}</prop>
                <prop key="location">alfresco/templates/software_engineering_project.xml</prop>
                <prop key="messages">alfresco/messages/bootstrap-templates</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.templates.content.childname}</prop>
                <prop key="location">alfresco/templates/content_template_examples.xml</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.templates.content.childname}</prop>
                <prop key="location">alfresco/templates/readme_template.xml</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.templates.email.childname}</prop>
                <prop key="location">alfresco/templates/email_templates.acp</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.templates.rss.childname}</prop>
                <prop key="location">alfresco/templates/rss_templates.acp</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}/${spaces.scripts.childname}</prop>
                <prop key="location">alfresco/bootstrap/example_javascripts.acp</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}</prop>
                <prop key="location">alfresco/bootstrap/webScripts.xml</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}</prop>
                <prop key="location">alfresco/bootstrap/webScriptsExtensions.xml</prop>
             </props>
             <props>
                <prop key="path">/${spaces.company_home.childname}/${spaces.dictionary.childname}</prop>
                <prop key="location">alfresco/bootstrap/webScriptsReadme.xml</prop>
             </props>
          </list>
       </property>
    </bean>

</beans>

Mon fichier:
tomcat/shared/classes/alfresco/extension/bootstrap/custom-categories.xml
contient (c'est presque une recopie du votre car j'ai renommé une categorie et enlevé les accents sur 2 sous-categories):

<view:view xmlns:view="http://www.alfresco.org/view/repository/1.0"
  xmlns:sys="http://www.alfresco.org/model/system/1.0"
  xmlns:cm="http://www.alfresco.org/model/content/1.0">

  <cm:category_root view:childName="cm:categoryRoot">
    <view:acl>
      <view:ace view:access="ALLOWED">
        <view:authority>guest</view:authority>
        <view:permission>Read</view:permission>
      </view:ace>
    </view:acl>
    <cm:name>categories</cm:name>
    <cm:categories>

      <cm:category view:childName="cm:generalclassifiable">
        <cm:name>General</cm:name>
        <cm:subcategories>
          <cm:category>
            <cm:name>ADMINISTRATIF</cm:name>
          </cm:category>
          <cm:category>
            <cm:name>Categorie 2</cm:name>
            <cm:subcategories>
              <cm:category>
                <cm:name>Sous categorie A</cm:name>
              </cm:category>
              <cm:category>
                <cm:name>Sous categorie B</cm:name>
              </cm:category>
            </cm:subcategories>
          </cm:category>
        </cm:subcategories>
      </cm:category>
    </cm:categories>
  </cm:category_root>
</view:view>

:!: J'ai caché le fichier tomcat/webapps/alfresco/WEB-INF/classes/alfresco/bootstrap/categories.xml
en le renommant en tomcat/webapps/alfresco/WEB-INF/classes/alfresco/bootstrap/categories.xml.sav

Pourtant Les catégories par défaut restent.

Me suis-je trompé de répertoires (shared-webapps)? N'est-ce possible que lors d'une premiere installation? :shock:

Cordialement,
DenisR
rguinot
Customer

Re: [Résolu]Mettre un type aux documents

Il est inutile de "cacher" le fichier à l'intérieur du .war.
Effectivement, la création des catégories initiales que vous redéfinissez ne se fait qu'au premier démarrage (bootstrap).
denisr
Member II

Re: [Résolu]Mettre un type aux documents

Bon, heureusement je n'avais pas rentré mes 300 catégories dans le fichier…
Y'at-il moyen de forcer une relecture ou un moyen programmatique de créer cet arbre des catégories? Je n'ai en effet pas vu que cela était possible en API mes peut-être ai-je raté quelque chose?
Mon problème étant que, bien que je puisse repartir bases vides sur mon environnement de développement il  n'en sera pas de même sur ma production.

Cdt,
DenisR
rguinot
Customer

Re: [Résolu]Mettre un type aux documents

Vous pouvez créer/supprimer/ manipuler des catégories via l'API JavaScript ( http://wiki.alfresco.com/wiki/JavaScript_API, http://wiki.alfresco.com/wiki/JavaScript_API#Classification_API)
blandron
Member II

Re: [Résolu]Mettre un type aux documents

Ayant installé ALFRESCO version 3 Full stable sur un serveur Windows ; je cherche à la customizer en fonction de nos besoins et pour cela je cherche à modifier la liste des catégories; j'ai donc effectuée qui est indiqué dans ce post:

    création du fichier  custom-bootstrap-context.xml dans le répertoire D:\Alfresco\tomcat\shared\classes\alfresco\extension
    création du fichier custom-categories.xml dans le répertoire D:\Alfresco\tomcat\shared\classes\alfresco\extension\bootstrap

lorsqu'après avoir relancé le serveur, je cherche à mettre à jour les catégories d'un documunetj'ai toujours la liste par défaut. Aurais -je manqué une étape? quelqu'un peut-il m'aider?
denisr
Member II

Re: [Résolu]Mettre un type aux documents

Bonjour,
Aviez-vous déjà lancé une première fois Alfresco? Sinon vous vous trouvez dans la même situation que moi et alors:

Effectivement, la création des catégories initiales que vous redéfinissez ne se fait qu'au premier démarrage (bootstrap).
c'est trop tard!

Cependant, comme pour moi il s'agissait de rentrer une 60taine de catégories dont d'ailleurs personne ne se sert actuellement je l'ai fait à la main et sinon pour un projet plus ambitieux autour des catégories la méthode proposée par R.Guinot doit parfaitement fonctionner, mais je ne l'ai pas essayée.

Vous pouvez créer/supprimer/ manipuler des catégories via l'API JavaScript ( http://wiki.alfresco.com/wiki/JavaScript_API, http://wiki.alfresco.com/wiki/JavaScript_API#Classification_API)

Cdt,
DenisR