I have created a custom aspect, and it's working fine. My problem is in the share-config-custom. So for the standard DocumetLibrary evaluator I have this:
<config evaluator="string-compare" condition="DocumentLibrary"> .... <aspects> <addable /> <!-- defaults to visible config --> <removeable /> <!-- defaults to visible config --> </aspects> </config>
And when I go and click "Manage Aspects" in the repo browser, it looks like all availabe aspects are listed, except of course, mine.
I can add it specifically like this:
<aspects> <visible> <aspect name="damsasp:adHoc" /> </visible> <addable> <aspect name="damsasp:adHoc" /> </addable> <removeable> <aspect name="damsasp:adHoc" /> </removeable> </aspects>
But then that is the ONLY aspect in the list.
Is there a way to do both? Or am I going to have to manually add all the aspects?
Solved! Go to Solution.
I see typo in your config, it should be "removable" instead of "removeable". Your approach seems correct but here are some additional details.
The default ootb config for DocumentLibrary is:
<config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <visible> <aspect name="cm:generalclassifiable" /> <aspect name="cm:complianceable" /> <aspect name="cm:dublincore" /> <aspect name="cm:effectivity" /> <aspect name="cm:summarizable" /> <aspect name="cm:versionable" /> <aspect name="cm:templatable" /> <aspect name="cm:emailed" /> <aspect name="emailserver:aliasable" /> <aspect name="cm:taggable" /> <aspect name="app:inlineeditable" /> <aspect name="cm:geographic" /> <aspect name="exif:exif" /> <aspect name="audio:audio" /> <aspect name="cm:indexControl" /> <aspect name="dp:restrictable" /> </visible> <addable> </addable> <removeable> </removeable> </aspects> .. </config>
When you are adding your custom aspects, make sure no where 'replace="true"' is set in either your custom module or at '/shared/classes/alfresco/web-extension/' level.
<config evaluator="string-compare" condition="DocumentLibrary" replace="true">..</config>
If above setting is set, out of the box configuration will get replaced.
To keep ootb aspects and your custom aspects together. You can (read the comments):
<config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <!-- Aspects that a user can see in UI. Used by Rules, aspects are the listed aspects for rule's "has-aspect" action condition. --> <visible> <aspect name="damsasp:adHoc" /> </visible> <!-- Aspects that a user can add in UI. Used by Rules, aspects are the listed aspects for rule's "add-features" action. Same as "visible" if left empty. --> <addable> <aspect name="damsasp:adHoc" /> </addable> <!-- Aspects that a user can remove in UI. Used by Rules, aspects are the listed aspects for rule's "remove-features" action. Same as "visible" if left empty --> <removable> <aspect name="damsasp:adHoc" /> </removable> </aspects> </config> OR <config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <!-- Aspects that a user can see in UI. Used by Rules, aspects are the listed aspects for rule's "has-aspect" action condition. --> <visible> <aspect name="damsasp:adHoc" /> </visible> <!-- Aspects that a user can add in UI. Used by Rules, aspects are the listed aspects for rule's "add-features" action. Same as "visible" if left empty. --> <addable> </addable> <!-- Aspects that a user can remove in UI. Used by Rules, aspects are the listed aspects for rule's "remove-features" action. Same as "visible" if left empty --> <removable> </removable> </aspects> </config>
Try fixing your config and see if it works.
I see typo in your config, it should be "removable" instead of "removeable". Your approach seems correct but here are some additional details.
The default ootb config for DocumentLibrary is:
<config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <visible> <aspect name="cm:generalclassifiable" /> <aspect name="cm:complianceable" /> <aspect name="cm:dublincore" /> <aspect name="cm:effectivity" /> <aspect name="cm:summarizable" /> <aspect name="cm:versionable" /> <aspect name="cm:templatable" /> <aspect name="cm:emailed" /> <aspect name="emailserver:aliasable" /> <aspect name="cm:taggable" /> <aspect name="app:inlineeditable" /> <aspect name="cm:geographic" /> <aspect name="exif:exif" /> <aspect name="audio:audio" /> <aspect name="cm:indexControl" /> <aspect name="dp:restrictable" /> </visible> <addable> </addable> <removeable> </removeable> </aspects> .. </config>
When you are adding your custom aspects, make sure no where 'replace="true"' is set in either your custom module or at '/shared/classes/alfresco/web-extension/' level.
<config evaluator="string-compare" condition="DocumentLibrary" replace="true">..</config>
If above setting is set, out of the box configuration will get replaced.
To keep ootb aspects and your custom aspects together. You can (read the comments):
<config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <!-- Aspects that a user can see in UI. Used by Rules, aspects are the listed aspects for rule's "has-aspect" action condition. --> <visible> <aspect name="damsasp:adHoc" /> </visible> <!-- Aspects that a user can add in UI. Used by Rules, aspects are the listed aspects for rule's "add-features" action. Same as "visible" if left empty. --> <addable> <aspect name="damsasp:adHoc" /> </addable> <!-- Aspects that a user can remove in UI. Used by Rules, aspects are the listed aspects for rule's "remove-features" action. Same as "visible" if left empty --> <removable> <aspect name="damsasp:adHoc" /> </removable> </aspects> </config> OR <config evaluator="string-compare" condition="DocumentLibrary"> <aspects> <!-- Aspects that a user can see in UI. Used by Rules, aspects are the listed aspects for rule's "has-aspect" action condition. --> <visible> <aspect name="damsasp:adHoc" /> </visible> <!-- Aspects that a user can add in UI. Used by Rules, aspects are the listed aspects for rule's "add-features" action. Same as "visible" if left empty. --> <addable> </addable> <!-- Aspects that a user can remove in UI. Used by Rules, aspects are the listed aspects for rule's "remove-features" action. Same as "visible" if left empty --> <removable> </removable> </aspects> </config>
Try fixing your config and see if it works.
Ask for and offer help to other Alfresco Content Services Users and members of the Alfresco team.
Related links:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.