Probleme mit Association in Custom-Aspekt

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

Probleme mit Association in Custom-Aspekt

Hallo,

Ich hab mir ein Custom-Content Model definiert. Jetzt versuche ich einem Aspekt eine Association auf einen Content-Type zuzuordnen.

Das funktioniert soweit auch, wenn ich dann allerdings in der Edit-Form den Content-Type zuweise und speichern will, sagt die Oberfläche ich Share "Alles klar" aber im Log-File kommt die Meldung:

11:09:01,164 WARN  [org.alfresco.repo.forms.processor.node.NodeFormProcessor] Ignoring field 'assoc_job_linkedCustomer_removed' as an association definition can not be found
11:09:01,164 WARN  [org.alfresco.repo.forms.processor.node.NodeFormProcessor] Ignoring field 'assoc_job_linkedCustomer_added' as an association definition can not be found


Hier noch das zugehörige Custom-Model:

"job:customer" ist als Content-Type definiert!

<aspect name="job:customerRelated">
            <title>Gehört zu Kunde</title>
         <associations>
               <association name="job:linkedCustomer">
                     <source>
                     <mandatory>false</mandatory>
                     <many>false</many>
                     </source>
                     <target>
                     <class>job:customer</class>
                     <mandatory>false</mandatory>
                         <many>false</many>
                     </target>
               </association>            
         </associations>
        </aspect>



Vielleicht sieht ja jemand wo der Fehler liegen könnte!

lg
Chris
4 Replies
thomash
Member II

Re: Probleme mit Association in Custom-Aspekt

Hallo,
Laut der Fehlermeldung findet der ContentModelFormProcessor die AssociationDefinition nicht.
Scheiterst du beim editieren eines vorhandenen Aspekts oder beim hinzufügen des Aspekts?
Falls der Fehler beim Hinzufügen des Aspekts auftaucht würde ich mal kucken ob die Modeldefinition überhaupt geladen wurde. Also mal die dictionayrBootrsap Bean im -context.xml prüfen.
Gruß
Thomas
jpfi_4454
Member II

Re: Probleme mit Association in Custom-Aspekt

Hallo,
die Logmeldungen kommen vom FormProcessor beim persistieren eines Nodes. das für Association verwendete Form Control protokolliert neben dem aktuell ausgewählten Wert(en) auch die hinzugefügten & entfernten Werte. Diese beiden letztgenannten werden unter dem Zusatz _added bzw. _removed an den FormProcessor übertragen wo Sie mit einem custom FormFilter ausgewertet werden könnten.
lange Rede kurzer Sinn: Das ist nur eine Warnmeldung die besagt dass der FormsService die beiden _added/_removed Properties nicht zuordnen kann und daher ignoriert.
Wenn du nichts spezielles vor hast kannst di die Meldung auch ignorieren.
VG, Jan
cbaus_8800
Member II

Re: Probleme mit Association in Custom-Aspekt

Hallo,

danke für die Antworten Smiley Happy

Der Fehler kommt wenn ich versuche Propertys auf einem vorhandenen Aspect hinzuzufügen.

Ich hab versucht diese Eigenschaften über JS zu setzen mit dem nodeRefs und das funktioniert ohne Problem, nur speichern (oder auch entfernen) scheitert beim Abspeichern.

Ich denke eher der Fehler liegt in der share-config-custom.xml, hier der relevante Abschnitt zur Definition.


<field id="job:linkedCustomer" label-id="Name" set="sop-core">
                    <control template="/org/alfresco/components/form/controls/association.ftl">
                  <control-param name="startLocation">workspace://SpacesStore/b824eb15-1db0-401a-8f13-3181280313c6</control-param>
                     <control-param name="showTargetLink">true</control-param>
                     <control-param name="compactMode">true</control-param>
                  </control>              
    </field>

Das Model hab ich mit der TestModel Class überprüft, da ist kein Fehler drin. Und soweit wird auch alles geladen.




lg
Chris
jpfi_4454
Member II

Re: Probleme mit Association in Custom-Aspekt

Hi,
ok, danke fürs posten deiner form definition. Wenn du es per JS setzen kannst, dann ist dein Model richtig. Was genau heisst "scheitern"?
- Änderungen aus dem Dialog werden am Node gar nicht gespeichert?
- Nur deine Assoc wird nicht richtig gesetzt
- …

Poste mal bitte deinen HTTP POST Request der beim Speichern-Klick an das repo gesendet wird? Dort müsste im Payload eine gefülltes field assoc_job_linkedCustomer = <your_nodeRef> stehen.
VG, jan