Working with Custom Content Types

cancel
Showing results for 
Search instead for 
Did you mean: 
michaelh
Active Member

Re: Working with Custom Content Types

Cela dit on travaille tard aussi chez Alfresco  :wink:

J'en profite pour dire un grand merci à "bch" pour son travail sur le forum en tout cas. Bravo !
benoit
Member II

Re: Working with Custom Content Types

Bonjour,

Smiley Surprisedops: Pardonner moi ma méprise. Le faite est que vous travaillez fort tard.

Merci pour la correction. Je l'ai appliquée, mais malheureusement…toujours rien.
bch
Member II

Re: Working with Custom Content Types

Bonjour,

j'ai copié vos  fichiers dans mon répertoire extension et celà fonctionne correctement.

Fournissez votre fichier complet web-client-config-custom.xml afin de le vérifier, voici le mien :


<alfresco-config>
   
   <config evaluator="string-compare" condition="Content Wizards">
<content-types>
<type name="my:sop" />
</content-types>
</config>

<config evaluator="node-type" condition="my:sop">
<property-sheet>
<show-property name="mimetype" display-label-id="content_type"
component-generator="MimeTypeSelectorGenerator" />
<show-property name="size" display-label-id="Tailletoto"
converter="org.alfresco.faces.ByteSizeConverter"
show-in-edit-mode="false" />
<show-property name="my:publishedDate" />
<show-association name="my:signOff" />
<show-property name="my:authorisedBy" />
<show-child-association name="my:processSteps" />
</property-sheet>
</config>

<config evaluator="aspect-name" condition="my:imageClassification">
<property-sheet>
<show-property name="my:width" display-label-id="larg toto"/>
<show-property name="my:height" display-label-id="hauteur toto"/>
<show-property name="my:resolution" display-label-id="Res toto"/>
</property-sheet>
</config>
   
</alfresco-config>

Redémarrez vous votre serveur après chaque changement ? Faites vous la bonne procédure pour créer votre nouveau type ?
benoit
Member II

Re: Working with Custom Content Types

voici mon fichier web-client-config-custom.xml

<alfresco-config>

   <!– Example of overriding the from email address –>
   <!–
   <config>
      <client>
         <from-email-address>someone@your-domain.com</from-email-address>
         <search-max-results>100</search-max-results>
      </client>
   </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>

   <!– Example of configuring advanced search –>
   <!–
   <config evaluator="string-compare" condition="Advanced Search">
      <advanced-search>
         <content-types>
         </content-types>
         <custom-properties>
            <meta-data aspect="app:simpleworkflow" property="app:approveStep" />
         </custom-properties>
      </advanced-search>
   </config>
   –>

   <!– Example of changing the sort direction for a view in the client –>
   <!–
   <config evaluator="string-compare" condition="Views">
      <views>
         <view-defaults>
            <topic>
               <sort-direction>ascending</sort-direction>
            </topic>
         </view-defaults>
      </views>
   </config>
   –>

   <!– Example of adding a custom icon to the Create Space dialog –>
   <!–
   <config evaluator="string-compare" condition="cm:folder icons">
      <icons>
         <icon name="space-icon-custom" path="/images/icons/space-icon-custom.gif" />
      </icons>
   </config>
   –>

   <!– The config below shows how to incorporate the example model–>
   <!– into the web client, for this to work you will need to –>
   <!– rename example-model-context.xml.sample to example-model-context.xml –>
   <!–
    <config evaluator="string-compare" condition="Content Wizards">
      <content-types>
         <type name="my:sop" />
      </content-types>
   </config>

   <config evaluator="node-type" condition="my:sop">
      <property-sheet>
         <show-property name="mimetype" display-label-id="content_type"
                        component-generator="MimeTypeSelectorGenerator" />
         <show-property name="size" display-label-id="TailleBen"
                        converter="org.alfresco.faces.ByteSizeConverter"
                        show-in-edit-mode="false" />              
         <show-property name="mySmiley TongueublishedDate" />
         <show-association name="my:signOff" />
         <show-property name="my:authorisedBy" />
         <show-child-association name="mySmiley TonguerocessSteps" />
      </property-sheet>
   </config>

   <config evaluator="aspect-name" condition="my:imageClassification">
      <property-sheet>
         <show-property name="my:width" display-label-id="larg toto" />
         <show-property name="my:height" display-label-id="hauteur toto" />
         <show-property name="my:resolution" display-label-id="Res toto" />
    readonly="true" />
    <show-association name="my:signOff" />
      </property-sheet>
   </config>

  

   <config evaluator="string-compare" condition="Action Wizards">
      <aspects>
         <aspect name="my:imageClassification"/>
      </aspects>
   </config>

   <config evaluator="string-compare" condition="Advanced Search">
      <advanced-search>
         <content-types>
            <type name="my:sop" />
         </content-types>
         <custom-properties>
            <meta-data type="my:sop" property="my:authorisedBy" />
            <meta-data aspect="my:imageClassification" property="my:resolution" />
         </custom-properties>
      </advanced-search>
   </config>
   –>

</alfresco-config>

Je travaille sur une machine de test en local. Je ne fait que relancer alf_start.bat. Y a t'il autre chose a faire?
bch
Member II

Re: Working with Custom Content Types

Si c'est le copier-coller de votre fichier, c'est complètement normal. Les lignes nécessaires sont en commentaires. Vous pouvez utiliser un outil avec la coloration syntaxique pour lire vos fichiers XML plus simplement (exemple : Bonfire studio). Celà évitera des erreurs.
benoit
Member II

Re: Working with Custom Content Types

Ceci explique cela   Smiley Surprisedops:

Cela fonctionne maintenant,

Un grand merci, je n'aurais jamais trouvé tous seule.

PS: je crois que je vais suivre votre conseil.
brellou94
Member II

Re: Working with Custom Content Types

Je suis également novice en xml et toutes les reponses de ce sujet m'ont beaucoup appris. Je rencontre malheureusement une erreur lors du lancement de mon alf_start.bat, le fichier de log indique une erreur a la ligne 1 du fichier monmodele-context.xml concernant le codage UTF-8. Cependant, j'ai copié exactement la première ligne fournie dans vos exemples.
Auriez-vous une idée de la cause de ce problème ?

Merci par avance.
michaelh
Active Member

Re: Working with Custom Content Types

On peut supposer que l'éditeur de texte utilisé est en cause … et que peut-être l'encodage est mauvais, ou que des caractères de contrôle se sont glissés en fin de ligne …

Bien vérifier l'encodage du fichier donc, dans l'immédiat je ne vois que ça.
brellou94
Member II

Re: Working with Custom Content Types

Merci beaucoup de votre réponse, le problème venait effectivement du choix de l'encodage dans l'éditeur. Je rencontre maintenant un autre problème lors du démarrage d'alfresco. Mon fichier context.xml et le log parleront sans doute mieux qu'une longue explication :

Mon fichier someco-model-context.xml :

<?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" dependson="dictionaryBootstrap">
      <property name="models">
         <list>
            <value>alfresco/extension/scModel.xml</value>
         </list>
      </property>
   </bean>
</beans>

Extrait du log :

18:25:29,328 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from file [F:\alfresco\tomcat\shared\classes\alfresco\extension\someco-model-context.xml]; nested exception is java.io.FileNotFoundException: http://www.springframework.org/dtd/springbeans.dtd
Caused by:
java.io.FileNotFoundException: http://www.springframework.org/dtd/springbeans.dtd
   at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1239)
   at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
   at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
   at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
   at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
   at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
   at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
   at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:388)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:340)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)
   at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:125)
   at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:141)
   at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:170)
   at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:145)
   at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:130)
   at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:90)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:495)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:340)
   at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)
   at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:125)
   at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:141)
   at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:123)
   at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:91)
   at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:94)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:292)
   at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:156)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
   at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
   at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825)
   at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
   at org.apache.catalina.core.StandardService.start(StandardService.java:448)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)


J'espère que vous pourrez m'aider à identifier l'origine du problème. Merci beaucoup.
michaelh
Active Member

Re: Working with Custom Content Types

Il y a au moins deux erreurs :

<!Registration of new models >
au lieu de
<!– Registration of new models –> 

et
<bean id="extension.dictionaryBootstrap" parent="dictionaryModelBootstrap" dependson="dictionaryBootstrap"> 
au lieu de
<bean id="extension.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">