Oracle UCM Integration with WebCenter
By John Brunswick on Apr 11, 2010
With WebCenter Suite Oracle has understood this need and addressed it by including Universal Content Management (UCM, formerly Stellent) licensing to allow content to be delivered into the portal from a mature, class-leading content management technology. To unlock the most value from this content technology, WebCenter portal technology can leverage a series of integration strategies available through its open standards support, as well as a series of native components to enable content consumption from UCM. This have been done to enable IT teams to reduce solution deployment time and provide quick wins to their business stakeholders. The ongoing cost of ownership for the solution is also greatly reduced through these various integrations.
Within this post we will explore various ways in which the content can be
- Contributed through out of the box interfaces
- Displayed natively within the portal (configuration)
- Exposed programmatically (development)
The information below showcases how to quickly take advantage of WebCenter's marriage of content and portal technologies, then leverage various programmatic integrations available with UCM.
Native Contribution Channels
Regardless of a particular contribution channel, UCM treats all content items in the same manner. UCM will store a native format of a contribution, create different renditions of the content when appropriate and version the content item as it is updated. The following list outlines the various channels that may be natively used to contribute content to the content server.
- Desktop Integration Suite (DIS - Windows Explorer / Email) - allows users to connect over HTTP to the content repository through what appears to be a network share or mapped drive within Windows Explorer, Microsoft Outlook or Lotus Notes. The desktop integration tools will automatically check out, check in and version the items in the repository as users make updates to content items. Additionally, UCM offers a lightweight plugin for Windows explorar that will display rich meta data, versioning, rendition and workflow information within the content of Windows Explorer.
WebDAV - Oracle UCM offers the ability to connect to the repository through WebDAV, so even without the integration suite outlined above, it is possible to connect and work with the content server through your operating system's native file management interface.
- Contributor WYSIWYG Web-based Editor - For certain types of content an online editor is available to let users create and management content, without the need for a particular application.
- Office Documents (Dynamic Converter) - UCM's Dynamic Converter capability allows users to submit MS Word documents that can be them intelligently converted into HTML based on a series of rules. This unique capability enables business users to create and manage content, without ever having to learn a new tool.
- Document Library Task Flow - WebCenter includes a component that displays a library-style view of UCM content in a very familiar way to end users - much like what Windows Explorer does on the desktop. The library portlet supports create, check in, check out and other functionality from within UCM.
- Content Integration Suite Contribution Portlet - Within a series of JSR 168 portlets Oracle has supplied a contribution portlet that allows submission similar to what is possible through the native Content Server Application interface.
- Content Server Native Interface - Last, but not least, files can be contributed and managed through a native UCM web application interface. This provides end users with the most robust management experience for various content assets.
Consumption into WebCenter through Native Components
WebCenter contains a series of technologies that allow content to be natively consumed from UCM. Constantly evolving, this list contains a series of current approaches that can be used to being to integrate content from UCM through configuration possible by end users with particular privileges.
- Content Presenter Task Flow - a component from WebCenter allowing end users to select one or more content items from UCM based on a selection or search, then display them using various templates.
- Content Portlet Suite - The Content Portlet Suite (CPS) contains a series of JSR-168 portlets that provide functionality to view, contribute and search content that you wish to display via the portal. The following is a complete list of the portlets that are available through CPS.
- Guest Library portlet: Content can be presented to users based on their role in the organization.
- Guest Search portlet: Allows the user to perform a keyword or full-text search on the Content Server and permits read-only access to the returned content.
- Saved Search portlet: Allows the user to save frequently used queries.
- Contribution portlet: Allows the user to contribute content to the content server.
- Workflow Queue portlet: The workflow portlet notifies users of their workflow tasks.
- Library portlet: Presents content to users based on their role in the organization, and provides read/write access to the returned content.
- Search portlet: Allows the user to perform a selected metadata and keyword search on the content server and provides read/write access to the returned content.
- Metadata Admin portlet: Allows the administrator to modify the properties of custom metadata.
- Document Library Task Flow - similar to an online version of Windows Explorer, the Document Library task flow allows users to access documents that they have permissions to. Users can contribute, update and search content within the task flow. For a complete overview of everything that is possible with the document library service view the Document Library task flow documentation.
- Omni Portlet - The OMNI portlet can consume and transform web services, as well as web pages. One of the most powerful integration techniques leverages UCM's rich conversion services from over 400 formats to web viewable formats. This allows content contributed to UCM, like an MS Word document, to be requested in an HTML format via a URL with a specific format. To retrieve a web viewable format for a document's latest version simply use the following URL syntax - http://<
>/idc/idcplg?IdcService=GET_DYNAMIC_CONVERSION&dDocName=<< doc name here >>&RevisionSelectionMethod=LatestReleased
- Ensemble - Oracle's Ensemble technology can consume any HTTP source and inject the resulting markup into another web page using a tag. This approach can allow UCM content to be easily repurposed within and outside of the portal framework.
- Open WCM Markup - In the most recent release of UCM Oracle has created some services that can quickly add content into portals and existing applications. They allow not only for the inclusion of the content, but also provide content managers the ability to have integrated editing that is available alongside the portal or application environment. Functionality includes, but is not limited to
- Viewing content within an external application (HTML/JSP/PHP/ASP etc.)
- Launching the WYSIWYG Contributor from an external application
- Viewing and editing Dynamically Converted content within an external application
- Viewing and editing Dynamic Lists/Static Lists from an external application
- Viewing and editing of Site Studio content within a Portal
- RSS Reader Task Flow - using the RSS task flow it is possible to get a listing of content items returned from a search query done in UCM that generates a listing of particular documents (this is also possible using the Content Presenter task flow). Each row that is returned from the RSS feed contains the filename, link to a PDF version of the document, date created, link to the native file, link to the UCM info page that displays meta data, author and description for the document.
Accessing and Displaying Content through Custom Code
To meet very specific project needs that cannot be accommodated by the approaches listed in the prior section, custom development might need to be considered. Thankfully, Oracle's UCM has a wide range of integration points that can help to expose various content assets. WebCenter can then consume the development through a variety of approaches, including WSRP 1 & 2, JSR 168 and REST. The following outlines some common integration points that UCM offers to make this possible.
- Content Integration Suite - the suite provides a series of APIs that allow access to functionality provided through the Content Server application interface. The APIs can be used to develop custom applications, portlets or any other systems that need to consume Content Server assets.
- Remote Intradoc Client (RIDC API) - removes data abstractions to the content server while still providing a wrapper to handle connection pooling, security, and protocol specifics.
- Content Integration Suite Java API (CIS API) - offers fine-grained control of requests sent to Content Server, supported by caching. The CIS API also supports a variety of interfaces like JCA and JMS.
- WSDL Generator (Web Services) - to provide platform agnostic access to Content Server assets from a variety development technologies UCM provides extensive support for web services that can be configured in Content Server administration. The WSDLGenerator is especially helpful for users who are not familiar with Java development, but who are familiar with web services and require easy access to UCM's functionality.
- Representational State Transfer (REST) - regardless of development platform, just as above, UCM offers a series of approaches to requesting and retrieving content. By appending various parameters to the UCM web interface it is possible to retrieve information in a series of formats that can be easily consumed by different clients.
- IsJava=1 - returns the native Java data binding for a Content Server web page
- IsSoap=1 - displays the SOAP data of a Content Server web page
- IsJson=1 - returns the JSON notation that represents a Content Server web page. An excellent example of UCM JSON in action can be found on Emiliano Pecis's blog.
- IsJava=1 - returns the native Java data binding for a Content Server web page
- Content repository API for Java - just as mature portal frameworks support JSR 168 development to allow companies to develop vendor agnostic portal code, content vendors have agreed on an API standard for content repository access.
- JCR 1.0 / JSR-170 - the goal of the specification can be summarized as follows - "focuses on transactional read/write access, binary content (stream operations), textual content, full-text searching, filtering, observation, versioning, handling of hard and soft structured content" Complete details of the JSR 170 specification can be found at (http://www.jcp.org/en/jsr/detail?id=170)
For additional information on programitic integration of Oracle UCM with portal technologies, it is worth checking out Andy Weaver's whitepaper from Fishbowl Solutions about Integrating ECM and Portals.
Summing Things Up
For many web related projects, both transactional interactions and content are going to be part of the solution. With WebCenter and Universal Content Management Oracle hs created a series of productized integrations to help speed development. For projects that have requirements that cannot be satisfied through this set of tools, both UCM and WebCenter offer a wide range of open, programmatic ways to integrate content within portal deployments.