This blog post was written by Matt Rudd, Enterprise Support Team Lead at Fishbowl Solutions. Matt has participated in multiple WebCenter 11g upgrades during his time with Fishbowl, and recently developed a solution for an issue he ran into frequently while performing upgrades.
With the release of the ADF Content UI for WebCenter Content, it has become clear that the long-term road map for folder-based storage within WebCenter Content is based on enterprise libraries. The new Content UI only allows you to browse content contained within these libraries, which are top-level “buckets” of logically grouped content for your enterprise. However, content (i.e. files) cannot be added directly under an enterprise library. One or more folders must be added under an enterprise library, and then files can be directly added to the folders. The enterprise libraries container can also be viewed via the legacy WebCenter Content UI by navigating to Browse Content->Folders, as shown below.
In order to use the ADF Content UI with existing folders and content, they need to be migrated to enterprise libraries via the Move command on a folder’s action menu.
For customers that have been using folders-based storage within WebCenter Content for a number of years, this can be especially difficult. Changes involving special characters and double spaces have presented problems, as well as other more challenging issues. The most challenging has been the nondescript error message “Unable to update the content item information for MyContent.” This error message pops up repeatedly for content that is not in workflow, is in Released status, has no other errors related to the content of any kind, and to which the moving user has full admin permissions. In addition, the content can be moved individually without issue, but not as part of a Framework Folders to enterprise libraries migration.
During the course of alleviating errors for a successful enterprise libraries migration, we discovered that if we copied the folders but moved the content, we were able to successfully migrate the majority of the content while still being able to clean up special character issues as necessary. In order to do this efficiently for large folder structures, the process needed to be automated.
Rather than building a custom component, we opted to build a custom RIDC application to recursively copy all, or any portion of, a folder structure from one parent to another while moving the content to the newly copied destination. This flexibility, along with ensuring that duplicate folders were not created in the destination folder structure, allowed us to run the application as many times as necessary. If a folder failed to move due to an issue (e.g. disallowed special character), the folder name could be changed and the application could re-run to only recursively process that folder. The number of content items under a particular level of the folder structure was verified with database queries to ensure all content was moved before deleting the old, and now empty, folder structure. This iterative process allowed us to migrate approximately 50,000 folders that contained 400,000 content items in about 15 hours. However, this was after rigorously testing the content migration in development and staging environments to alleviate as many content and folder issues as possible prior to the go-live migration. The RIDC application used no custom services of any kind and relied solely on those provided by core WebCenter Content and the Framework Folders component.