{"id":3361,"date":"2013-11-28T15:18:00","date_gmt":"2013-11-28T14:18:00","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/"},"modified":"2013-11-28T15:18:00","modified_gmt":"2013-11-28T14:18:00","slug":"developing-an-archive-action-for-alfresco-share-1-of-2","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/","title":{"rendered":"Developing an archive action for Alfresco Share (1 of 2)"},"content":{"rendered":"<p><img decoding=\"async\" class=\"blog-image aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\" alt=\"\" \/><\/p>\n<p>A few weeks ago when I was working on setting up an Alfresco Community Edition v4.2.c, I came across a problem that took me quite some time. What I will talk about today is the customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2 (a, b, c and d).<\/p>\n<p>Unfortunately, Alfresco Share does not provide function to archive content. To meet this need, I was led to develop an action using the Java-Backed Web Script. This technology is very similar to Web Scripts except that the desired action is written in Java.<\/p>\n<p>This article contains the changes made to the core of Alfresco for the implementation of this action. In an article that will be available soon, I will discuss the changes to do to Alfresco Share to add this new action and make it work. Please also note that in this second article, I will join a zip file containing all the files needed to create the two AMPs and therefore the action.<\/p>\n<h3>1. Description of the action<\/h3>\n<p>We Assume that your repository is structured as follows:<\/p>\n<ul>\n<li>Company Home\n<ul>\n<li>00_FirstLevel\n<ul>\n<li>001_SecondLevel<\/li>\n<\/ul>\n<\/li>\n<li>01_FirstLevel<\/li>\n<li>&#8230;<\/li>\n<li>99_Archives<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>The only requirement is to have a folder named 99_Archives. You can change the name of this folder in the Java code.<\/p>\n<p>With this structure, the purpose of the archive action will be to move an element (a file or a folder containing other elements) to the folder named 99_Archives.<\/p>\n<p>In order to do something useful, we can also add other features such as:<\/p>\n<ul>\n<li>Each time a user will execute the archive action, a folder named YYYYMMDD (current date) will be created if it does not exist<\/li>\n<li>In order to maintain the integrity of the repository, each archived item must keep their own rights<\/li>\n<li>All the elements entering into the 99_Archives folder should no longer be editable<\/li>\n<\/ul>\n<h3>2. Operation<\/h3>\n<p>The use of Java-Backed Web Script for the creation of actions in Alfresco Share is very useful because it allows access to the entire Java API provided by Alfresco. This allows you to easily develop actions that will be very powerful.<\/p>\n<p>When a user clicks the archive action from the interface of Alfresco Share, a JavaScript file is called. This file is used to record the action that has been requested and tries to process the request. It also uses a generic module provided by Alfresco that allows the execution of a Web Script from its URL. This module then starts the execution of the Web Script which is, in our case, a Java code. Depending on the success or failure of the Java code, the JavaScript file will send to the user a message with the state of the action.<\/p>\n<h3>3. Extension of Alfresco<\/h3>\n<p>For the development of the archive action, start from the assumption that you already have an Eclipse project (or other IDE) which allow you to create some AMPs (Alfresco Module Packages) for Alfresco and Alfresco Share. It means that you have two project with the following files: build.xml, file-mapping.properties, module.properties and jars to compress JavaScript. If I get a few requests, I could make a new blog about setting up an Eclipse project to completely customize Alfresco or Alfresco Share.<\/p>\n<p>Note these two projects as follows: AlfrescoAMP and AlfrescoShareAMP. ALF_AMP_HOME and SHARE_AMP_HOME references the location of the projects (for example <em>C:\/AlfrescoEclipseProjects\/AlfrescoAMP<\/em>).<\/p>\n<p>The first thing to do is to write the Java code. To do this, just created the file:<br \/>\n<em>ALF_AMP_HOME\/source\/java\/org\/alfresco\/module\/YOUR_MODULE_NAME&gt;\/ArchiveWebscript.java<\/em><br \/>\n<a class=\"easyblog-thumb-preview\" title=\"JavaP1.png\" href=\"http:\/\/dbi-services.com\/blog\/images\/easyblog_images\/132\/JavaP1.png\"><br \/>\n<\/a><a class=\"easyblog-thumb-preview\" title=\"ArchiveWebscript.java.p1.png\" href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ArchiveWebscript.java_.p1.png\"><img decoding=\"async\" style=\"display: block; margin-left: auto; margin-right: auto;\" title=\"ArchiveWebscript.java.p1.png\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ArchiveWebscript.java_.p1.png\" alt=\"ArchiveWebscript.java.p1.png\" \/><\/a><a class=\"easyblog-thumb-preview\" title=\"ArchiveWebscript.java.p2.png\" href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ArchiveWebscript.java_.p2.png\"><img decoding=\"async\" style=\"display: block; margin-left: auto; margin-right: auto;\" title=\"ArchiveWebscript.java.p2.png\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ArchiveWebscript.java_.p2.png\" alt=\"ArchiveWebscript.java.p2.png\" \/><\/a><br \/>\nCaution:<\/p>\n<ul>\n<li>Notice that in the code, there are several methods &#8220;setXXX&#8221; that will be called automatically by Alfresco to initialize variables that are defined and have the same name<\/li>\n<li>As you can see in the Java code, I&#8217;ve previously been led to create customized groups (&#8220;dbi_read&#8221;, &#8220;dbi_write&#8221;, etc&#8230;). It is important to note that to prevent edition of elements in the folder 99_Archives, I created other groups completely equivalent except that I remove the terms &#8220;AddChildren&#8221;, &#8220;Write&#8221; and &#8220;CheckOut&#8221;. All of these groups have been created in ALF_AMP_HOME\/config\/alfresco\/model\/permissionDefinitions.xml. There are other ways to do this but this is the one that best suited our needs.<\/li>\n<\/ul>\n<p>Then you need to tell Spring that we have a new Java class:<br \/>\n<em>ALF_AMP_HOME\/config\/alfresco\/module\/YOUR_MODULE_NAME\/module-context.xml<\/em><\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"module-context.xml.png\" href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/module-context.xml_.png\"><img decoding=\"async\" style=\"display: block; margin-left: auto; margin-right: auto;\" title=\"module-context.xml.png\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/module-context.xml_.png\" alt=\"module-context.xml.png\" \/><\/a><br \/>\nThis file allows you to set several other context files (e.g. one for each action) in order to separate actions but this is not mandatory.<\/p>\n<p>The definition of the action is in the following file:<br \/>\n<em>ALF_AMP_HOME\/config\/alfresco\/module\/YOUR_MODULE_NAME\/context\/service-context.xml<\/em><\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"service-context.xml.png\" href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/service-context.xml_.png\"><img decoding=\"async\" style=\"display: block; margin-left: auto; margin-right: auto;\" title=\"service-context.xml.png\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/service-context.xml_.png\" alt=\"service-context.xml.png\" \/><\/a><br \/>\nNote that each variable that needs to be initialized by Alfresco at the execution of the archive action must be declared in this file.<\/p>\n<p>The last step in the extension of the core of Alfresco is the declaration of the Java-Backed Web Script. As I stated previously, this is done in the same way as the declaration of a classic Web Script:<br \/>\n<em>ALF_AMP_HOME\/config\/alfresco\/extension\/templates\/webscripts\/YOUR_MODULE_NAME\/archive.get.desc.xml<\/em><\/p>\n<p><a class=\"easyblog-thumb-preview\" title=\"archive.get.desc.xml.png\" href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/archive.get_.desc_.xml_.png\"><img decoding=\"async\" style=\"display: block; margin-left: auto; margin-right: auto;\" title=\"archive.get.desc.xml.png\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/archive.get_.desc_.xml_.png\" alt=\"archive.get.desc.xml.png\" \/><\/a><\/p>\n<p>This concludes the first part of this blog about the modification to bring to the core of Alfresco. The other part of this post will be available soon!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few weeks ago when I was working on setting up an Alfresco Community Edition v4.2.c, I came across a problem that took me quite some time. What I will talk about today is the customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":3362,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[],"type_dbi":[],"class_list":["post-3361","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-application-integration-middleware"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Developing an archive action for Alfresco Share (1 of 2) - dbi Blog<\/title>\n<meta name=\"description\" content=\"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Developing an archive action for Alfresco Share (1 of 2)\" \/>\n<meta property=\"og:description\" content=\"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2013-11-28T14:18:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"419\" \/>\n\t<meta property=\"og:image:height\" content=\"120\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Morgan Patou\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MorganPatou\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Morgan Patou\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\"},\"author\":{\"name\":\"Morgan Patou\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"headline\":\"Developing an archive action for Alfresco Share (1 of 2)\",\"datePublished\":\"2013-11-28T14:18:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\"},\"wordCount\":901,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\",\"articleSection\":[\"Application integration &amp; Middleware\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\",\"name\":\"Developing an archive action for Alfresco Share (1 of 2) - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\",\"datePublished\":\"2013-11-28T14:18:00+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\"},\"description\":\"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg\",\"width\":419,\"height\":120},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Developing an archive action for Alfresco Share (1 of 2)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8\",\"name\":\"Morgan Patou\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g\",\"caption\":\"Morgan Patou\"},\"description\":\"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\/Banking, and the Pharmaceutical industry.\",\"sameAs\":[\"https:\/\/blog.dbi-services.com\/author\/morgan-patou\/\",\"https:\/\/x.com\/MorganPatou\"],\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/morgan-patou\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Developing an archive action for Alfresco Share (1 of 2) - dbi Blog","description":"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/","og_locale":"en_US","og_type":"article","og_title":"Developing an archive action for Alfresco Share (1 of 2)","og_description":"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.","og_url":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/","og_site_name":"dbi Blog","article_published_time":"2013-11-28T14:18:00+00:00","og_image":[{"width":419,"height":120,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg","type":"image\/jpeg"}],"author":"Morgan Patou","twitter_card":"summary_large_image","twitter_creator":"@MorganPatou","twitter_misc":{"Written by":"Morgan Patou","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/"},"author":{"name":"Morgan Patou","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"headline":"Developing an archive action for Alfresco Share (1 of 2)","datePublished":"2013-11-28T14:18:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/"},"wordCount":901,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg","articleSection":["Application integration &amp; Middleware"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/","url":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/","name":"Developing an archive action for Alfresco Share (1 of 2) - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg","datePublished":"2013-11-28T14:18:00+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8"},"description":"Customization of the actions provided by the interface of Alfresco Share. This action was tested on all sub-versions of Alfresco Community Edition 4.2.","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/2e1ax_default_entry_alfresco.jpg","width":419,"height":120},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/developing-an-archive-action-for-alfresco-share-1-of-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Developing an archive action for Alfresco Share (1 of 2)"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c4d05b25843a9bc2ab20415dae6bd2d8","name":"Morgan Patou","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5d7f5bec8b597db68a09107a6f5309e3870d6296ef94fb10ead4b09454ca67e5?s=96&d=mm&r=g","caption":"Morgan Patou"},"description":"Morgan Patou has over 12 years of experience in Enterprise Content Management (ECM) systems, with a strong focus in recent years on platforms such as Alfresco, Documentum, and M-Files. He specializes in the architecture, setup, customization, and maintenance of ECM infrastructures in complex &amp; critical environments. Morgan is well-versed in both engineering and operations aspects, including high availability design, system integration, and lifecycle management. He also has a solid foundation in open-source and proprietary technologies - ranging from Apache, OpenLDAP or Kerberos to enterprise-grade systems like WebLogic. Morgan Patou holds an Engineering Degree in Computer Science from ENSISA (\u00c9cole Nationale Sup\u00e9rieure d'Ing\u00e9nieurs Sud Alsace) in Mulhouse, France. He is Alfresco Content Services Certified Administrator (ACSCA), Alfresco Content Services Certified Engineer (ACSCE) as well as OpenText Documentum Certified Administrator. His industry experience spans the Public Sector, IT Services, Financial Services\/Banking, and the Pharmaceutical industry.","sameAs":["https:\/\/blog.dbi-services.com\/author\/morgan-patou\/","https:\/\/x.com\/MorganPatou"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/morgan-patou\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/3361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=3361"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/3361\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/3362"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=3361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=3361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=3361"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=3361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}