AnsweredAssumed Answered

"Impossible to update the aspects" when try to add a aspect to a content

Question asked by 4535992 on Jul 28, 2017
Latest reply on Aug 2, 2017 by afaust

Hi, i'm try to modify a addon of alfresco for my purpose , so i have created my amps of alfresco and share , seem to work but there is a problem  it's make me go nuts,  i have a aspect called "key", i make that visible to the user with the "share-config-custom.xml" file, but when i try to add , alfresco return the message "Impossible to update the aspect" without launch any error on the log.

 

Here the code related to the aspect:

---------------------------------------------------------------------------------

---- Model Context on alfresco "digitalSigningModel.xml"

-----------------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>
<!-- Definition of new Model -->
<model name="dgtsgn:digitalSigningmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">   
    <description>Digital Signing Content Model</description>
    <author>Emmanuel ROUX</author>
    <version>1.0</version>

    <imports>
        <!-- Import Alfresco Dictionary Definitions -->
        <import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
        <!-- Import Alfresco Content Domain Model Definitions -->
        <import uri="http://www.alfresco.org/model/content/1.0" prefix="cm" />
    </imports>
    
    <namespaces>
        <namespace uri="http://www.alfresco.com/model/digital/signing/1.0" prefix="dgtsgn" />
    </namespaces>

 

    <aspects>
        <aspect name="dgtsgn:key">
            <title>Key</title>
            <properties>
                <property name="dgtsgn:keyType">
                        <title>Type</title>
                        <type>d:text</type>
                        <mandatory>true</mandatory>
                </property>
                <property name="dgtsgn:keyAlias">
                        <title>Alias</title>
                        <type>d:text</type>
                        <mandatory>true</mandatory>
                </property>
                <property name="dgtsgn:keySubject">
                        <title>Subject</title>
                        <type>d:text</type>
                        <mandatory>true</mandatory>
                </property>
                <property name="dgtsgn:keyFirstValidity">
                        <title>First day validity</title>
                        <type>d:date</type>
                </property>
                <property name="dgtsgn:keyLastValidity">
                        <title>Last day validity</title>
                        <type>d:date</type>
                </property>
                <property name="dgtsgn:keyAlgorithm">
                        <title>Algorithm</title>
                        <type>d:text</type>
                </property>
                <property name="dgtsgn:keyAlert">
                          <title>Alert</title>
                        <type>d:text</type>
                </property>
                <property name="dgtsgn:keyHasAlerted">
                          <title>Alert</title>
                        <type>d:boolean</type>
                </property>
                <property name="dgtsgn:keyCryptSecret">
                         <title>Secret</title>
                           <type>d:encrypted</type>
                        <protected>true</protected>
                        <default></default>
                </property>
            </properties>
        </aspect>

 

    </aspects>
</model>

---------------------------------------------------------------------------------

---- Model Context on share "share-config.custom"

-----------------------------------------------------------------------------------

<alfresco-config>
  .................................................
    <!-- Document Library config section -->
    
       <config evaluator="string-compare" condition="DocumentLibrary" replace="true">
           <!--  
        <indicators>
            <indicator id="signed-doc" index="10" label="indicator.signed">
                <evaluator>evaluator.doclib.indicator.digitalSigning.signedDoc</evaluator>
            </indicator>
        </indicators>
        -->
        
        <!--  
        <multi-select>
         <action type="action-link" id="onActionSign" label="menu.selected-items.sign" />
          <action type="action-link" id="onActionSignSimple" label="menu.selected-items.signsimple" />
          </multi-select>
          -->
          
           <aspects>
            <visible>
                <aspect name="dgtsgn:signed"/>
                <aspect name="dgtsgn:key" />
                <aspect name="dgtsgn:image" />
                <aspect name="dgtsgn:originalDoc" />
            </visible>
            <addable> <!-- defaults to visible config -->
            </addable>
            <removeable> <!-- defaults to visible config -->
            </removeable>
        </aspects>
    </config>

 

......................................................................................................................


    <config evaluator="aspect" condition="dgtsgn:key">
        <forms>
               <form>
                <field-visibility>
                    <show id="dgtsgn:keyType" for-mode="view"/>
                    <show id="dgtsgn:keyAlias" for-mode="view"/>
                    <show id="dgtsgn:keySubject" for-mode="view"/>
                    <show id="dgtsgn:keyFirstValidity" for-mode="view"/>
                    <show id="dgtsgn:keyLastValidity" for-mode="view"/>
                    <show id="dgtsgn:keyAlgorithm" for-mode="view"/>
                </field-visibility>
                <appearance>
                    <field id="dgtsgn:keyType" label-id="prop.dgtsgn_keyType" />
                    <field id="dgtsgn:keyAlias" label-id="prop.dgtsgn_keyAlias" />
                    <field id="dgtsgn:keySubject" label-id="prop.dgtsgn_keySubject" />
                    <field id="dgtsgn:keyFirstValidity" label-id="prop.dgtsgn_keyFirstValidity" />
                    <field id="dgtsgn:keyLastValidity" label-id="prop.dgtsgn_keyLastValidity" />
                    <field id="dgtsgn:keyAlgorithm" label-id="prop.dgtsgn_keyAlgorithm" />
                </appearance>
            </form>
        </forms>
    </config>
    ....................................................................................................................................

 

</alfresco-config>

It's seem all right at least on the xml configuration, there is some other file configuration i can consult for this problem?

 

P.S If you want to try the amp i used for replace  on your machine for check the problem the full code is here:

Alfresco AMP Code:DigitalSigning/DigitalSigningAlfresco-SDK at master · p4535992/DigitalSigning · GitHub 

Share AMP Code:DigitalSigning/DigitalSigningShare-SDK at master · p4535992/DigitalSigning · GitHub 

AMP File for test: DigitalSigning/amp at master · p4535992/DigitalSigning · GitHub 

 

 

 

Greetings.

Outcomes