AnsweredAssumed Answered

CMIS e Association

Question asked by samfisher on Mar 1, 2011
Salve,
ho creato il mio bel customtype con Alfresco e riesco tramite cmis a creare delle istanze e settare i vari metadati custom.

Ora ho l'esigenza di creare un'associazione del mio tipo con un altro…un allegato ad esempio.
La configurazione del type è la seguente:


<type name="dp:esempio">
      <title>Esempio</title>
      <parent>cm:content</parent>
      <properties>
         ……..
      </properties>
      <associations>
             <child-association name="dp:relazione">
           <source>
                   <mandatory>false</mandatory>
                        <many>false</many>
                 </source>
             <target>
                 <class>dp:allegato</class>
                   <mandatory>false</mandatory>
                      <many>true</many>
             </target>
          </child-association>
    </associations>
</type>

  <type name="dp:allegato">
      <title>Allegato</title>
      <parent>cm:content</parent>
   </type>

Tramite Cmis come posso creare un documento allegato e legarlo tramite l'associazione "dp:relazione" al mio documento ESEMPIO principale?

sto provando a fare in questo modo, ma non ci riesco…


HashMap<String, Object> prop1 = new HashMap<String, Object>;
prop1.put(PropertyIds.NAME , "TestEsempio");
prop1.put(PropertyIds.OBJECT_TYPE_ID, "D:dp:esempio");
Document docAdded1 = folder.createDocument(prop1, conStream1, versioningState1, null, null, null, session.getDefaultContext());

HashMap<String, Object> prop2 = new HashMap<String, Object>;
prop2.put(PropertyIds.NAME , "TestAllegato");
prop2.put(PropertyIds.OBJECT_TYPE_ID, "D:dp:allegato");
Document docAdded2 = folder.createDocument(prop1, conStream1, versioningState1, null, null, null, session.getDefaultContext());

Map<String, String> relProps = new HashMap<String, String>();
relProps.put("cmis:sourceId", docAdded1.getId());
relProps.put("cmis:targetId", docAdded2.getId());
relProps.put("cmis:objectTypeId", "R:dp:relazione");
session.createRelationship(relProps, null, null, null);

Se questo non è il modo corretto, qual è invece il modo corretto per associare un documento ad un altro tramite CMIS?
Grazie mille a chi vorrà rispondermi.
alfsotti

Outcomes