Ligero Content Delivery Server. Documentum Content Integration with

Similar documents
EMC Documentum Content Services for SAP iviews for Related Content

Documentum Content Management Foundations EMC Proven Professional Certification Exam E Study Guide

EMC Documentum Webtop

Documentum Content Distribution Services TM Administration Guide

EMC E EMC Content Management Foundation Exam(CMF)

Intelligent Dashboards made Simple! Using Excel Services

TROUBLESHOOTING RSA ACCESS MANAGER SINGLE SIGN-ON FOR WEB-BASED APPLICATIONS

Esigate Module Documentation

Copyright 2014 Jaspersoft Corporation. All rights reserved. Printed in the U.S.A. Jaspersoft, the Jaspersoft

FileMaker Server 9. Custom Web Publishing with PHP

Accessing Data with ADOBE FLEX 4.6

BusinessObjects Enterprise XI Release 2 Administrator s Guide

Ektron to EPiServer Digital Experience Cloud: Information Architecture

A Java proxy for MS SQL Server Reporting Services

Getting Started Guide for Developing tibbr Apps

Complete Java Web Development

Using EMC Documentum with Adobe LiveCycle ES

Flattening Enterprise Knowledge

CORRELATE for Microsoft Sharepoint Windows Services

SOA, case Google. Faculty of technology management Information Technology Service Oriented Communications CT30A8901.

SharePoint Integration Framework Developers Cookbook

EMC Documentum Content Services for SAP CRM Usage and Future Prospects

MatchPoint Technical Features Tutorial Colygon AG Version 1.0

Web Publisher Administration Guide

Introduction to XML Applications

Integrating SharePoint Sites within WebSphere Portal

Extending Microsoft SharePoint Environments with EMC Documentum ApplicationXtender Document Management

multiple placeholders bound to one definition, 158 page approval not match author/editor rights, 157 problems with, 156 troubleshooting,

EMC Documentum Content Services for SAP Document Controllers

SEO Suite Pro. User Guide

Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform

EMC Documentum Documentum Foundation Classes

HPC PORTAL DEVELOPMENT PLATFORM

DataDirect XQuery Technical Overview

Copyright 2013 EMC Corporation. All Rights Reserved.

Red Hat Enterprise Portal Server: Architecture and Features

Chapter. Solve Performance Problems with FastSOA Patterns. The previous chapters described the FastSOA patterns at an architectural

How To Build A Connector On A Website (For A Nonprogrammer)

Structured Content: the Key to Agile. Web Experience Management. Introduction

Single Sign-on Configuration for SharePoint Integration

Content Management Implementation Guide 5.3 SP1

Microsoft SQL Server 2005 Reporting Services Step by Step

Microsoft SharePoint Products & Technologies

Terms and Definitions for CMS Administrators, Architects, and Developers

HPC Portal Development Platform with E-Business and HPC Portlets

McAfee VirusScan and epolicy Orchestrator Administration Course

Taleo Enterprise. Taleo Reporting Getting Started with Business Objects XI3.1 - User Guide

EMC Documentum Repository Services for Microsoft SharePoint

Kentico CMS Web Parts

EMC Documentum Composer

The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform

Reporting Services. White Paper. Published: August 2007 Updated: July 2008

Grails 1.1. Web Application. Development. Reclaiming Productivity for Faster. Java Web Development. Jon Dickinson PUBLISHING J MUMBAI BIRMINGHAM

WatchDox SharePoint Beta Guide. Application Version 1.0.0

JBoss Portlet Container. User Guide. Release 2.0

Manage Workflows. Workflows and Workflow Actions

Policy Guide Access Manager 3.1 SP5 January 2013

IBM Unica emessage Version 8 Release 6 February 13, User's Guide

Two new DB2 Web Query options expand Microsoft integration As printed in the September 2009 edition of the IBM Systems Magazine

What is SharePoint? Collaboration Tool

A brief introduction on SharePoint

Microsoft SharePoint Products & Technologies

Coveo Platform 7.0. Microsoft Active Directory Connector Guide

Content Management Systems: Drupal Vs Jahia

MOVING TO THE NEXT-GENERATION MEDICAL INFORMATION CALL CENTER

Working with RD Web Access in Windows Server 2012

Actifio Big Data Director. Virtual Data Pipeline for Unstructured Data

Common Questions and Concerns About Documentum at NEF

EMC DOCUMENT SCIENCES XPRESSION ENTERPRISE INTEGRATION

White Paper. Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1

WIRIS quizzes web services Getting started with PHP and Java

How to select the right Marketing Cloud Edition

Web Services for Management Perl Library VMware ESX Server 3.5, VMware ESX Server 3i version 3.5, and VMware VirtualCenter 2.5

Chapter 22: Integrating Flex applications with portal servers

Student Data Reporting I Cognos

IBM Content Integrator Enterprise Edition, Version 8.5.1

Novell Identity Manager

EMC Documentum Connector for Microsoft SharePoint

A LANGUAGE TRANSLATION SERVICE FOR DOCUMENTUM. M. Scott Roth Director of Technology Armedia, LL

A Successful SharePoint Migration: Best Practices Before, During and After Your Migration

Oracle9i Application Server: Options for Running Active Server Pages. An Oracle White Paper July 2001

SiteCelerate white paper

Capacity Planning for Microsoft SharePoint Technologies

Using your Drupal Website Book 1 - Drupal Basics

Web Application Development

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

DEPLOYMENT GUIDE Version 2.1. Deploying F5 with Microsoft SharePoint 2010

Content Server Installation Guide

zen Platform technical white paper

Enterprise Content Management with Microsoft SharePoint

SOA REFERENCE ARCHITECTURE: WEB TIER

Nintex Workflow 2013 Help

Adobe ColdFusion 11 Enterprise Edition

WHAT'S NEW IN SHAREPOINT 2013 WEB CONTENT MANAGEMENT

KINETIC SR (Survey and Request)

Dynamic Decision-Making Web Services Using SAS Stored Processes and SAS Business Rules Manager

FileMaker Server 12. Custom Web Publishing with PHP

Transcription:

Ligero Content Delivery Server Documentum Content Integration with Ligero Content Delivery Server Prepared By Lee Dallas Principal Consultant Armedia, LLC April, 2008 1

Summary Ligero Content Delivery Server (CDS) is an advanced caching server designed to improve and simplify access to Documentum-managed content. Users can easily and efficiently access the Documentum repository from Microsoft SharePoint or other portal environments through simple dynamic pages, URL links, RSS, or custom Flex applications. Ligero CDS supports legacy Documentum RightSite tags and anonymous access, making upgrade to D6 possible without changes to existing content or interfaces. The Problem Simple Content Delivery Documentum s history of tight control over the content life cycle is the reason so many customers have turned to it over the years. The scalability of the product makes it an attractive platform for any content management effort. However, not all content consumption requires such stringent control over user access to published content. Many times, content managed by one department simply needs to be read, on occasion, by another. Developers and managers don t necessarily want their users to log into WebTop simply to read a document. Replicating that content to a file system or developing a custom application is overkill in most situations as well. Why maintain another set of credentials or copy content out to an open web server that is dependent upon another process to publish 10,000 files no one cares about? What is needed is a simple, scalable method for accessing the repository that doesn t require replicating content across the data center. Ligero CDS provides that method. Background Legacy Documentum Web Access Those familiar with the history of Documentum will recall that WebTop and WebPublisher were not the first tools for thin client access Documentum offered. The first tool set, RightSite, was an ISAPI application running in Internet Information Server (IIS) that called the same API library as all other client applications accessing Documentum. Customers built thousands of applications from that initial framework. They also learned to make extensive use of WebQL, the custom HTML tag set that provided dynamic page building capabilities. The WebQL tag sets provided document query, control flow, session management, and certain aggregate functions. Customers created thousands of documents containing these powerful and flexible tags in support of many complex processes. Growth of Web Enabled Content Management With RightSite, the Documentum Record Locator (a COM-based shortcut to a document) evolved into a URL, and hyperlinks to individual documents became popular. In addition to WebQL, RightSite established a convention for anonymous site access that greatly simplified retrieval of individual documents within the repository. These conventions not only allowed for anonymous access configuration, but also supported the full range of default Documentum features. Documentum security, renditions, annotations, and version control were now easy to integrate with other application through simple URL references. Documentum also introduced what was called virtual link support. With virtual links, references to the ISAPI application and parameters were removed and the URL represented the actual folder path to the content. This model was logical, easy to understand, and made for simple transition from other web server implementations to Documentum managed systems. Challenges in Upgrades With the release of Documentum 5, the RightSite ISAPI application was retired in favor of J2EE and a Java Server Faces (JSF) application framework. For performance, security, and other architectural reasons important at the time, Documentum elected to discontinue the support of the RightSite tag set. While DRL s continued to be supported, simple consumption 2

Figure 1. of Documentum content was decoupled from the content management system in favor of a push publishing model. If a developer wanted to consume content directly from the repository, a WDK application or custom servlet was required. With 5.2, Documentum reintroduced anonymous access and virtual session linking, but the implementation lacked the popular run time interpretation of the RightSite tag set. The RightSite retirement meant that many thousands of Documentum managed web pages containing RightSite tags or anonymous access URLs had to be rewritten. Existing customers were stranded on unsupported versions of Documentum because rewriting the content to accommodate the changes proved too expensive with little or no return on investment. Developers who needed simple, trusted access to repository content for portal or enterprise application integration have to write unique custom solutions time after time if Site Caching Services push publishing model is not desired. Furthermore, the overhead associated with WDK and JSF makes these solutions less desirable in some cases. When flexible, high performance basic access is called for, development costs for custom Documentum integration are simply too high. The Solution Content Management Enabled Caching Most well-designed sites today use some sort of caching technology to optimize delivery. Traditionally, content is pushed to a file system which, in turn, is accessed by a web server. Caching approaches for web applications were developed because of a concern for load on the repositories. With improvements in highly available architectures and systems management, repository load is becoming less of a concern. Multiple web servers on the same site often maintain unique file systems increasing the need for space and replicating data. Even when virtual file systems or NFS caching is employed, the content is pushed to the site whether it is accessed or not. Gigabytes of rarely accessed content needlessly pushed to multiple targets can strain publishing engines and the networks where they run. Active Caching Ligero CDS changes the Documentum publishing model by fetching content from a repository the first time someone tries to access it. A pull rather than a push. The pull eliminates the need to publish files ahead of time. Ligero CDS combines the approaches and reduces the dependence on the repository server by caching the most frequently accessed content. Load balancing, preemptive caching of critical content, and other techniques will reduce any risk created by depending on the repository. This strategy also ensures that the load on the repository is kept to a minimum. Access to content can be granted through anonymous sessions or by usersupplied credentials for confidential data. Unless specifically called for, content accessed by authenticated sessions is not cached, rather it is delivered directly to the consumer. Dynamic Page Assembly Because files are not statically staged, the delivery server can process the files on request. 3

Figure 2. For example, a page can write a table that executes a query for all documents with the key word News and a modify date within the last two days. When someone attempts to read the page the first time, the processor will execute the query and populate the table with links to the target documents. If the server has caching enabled, the content is held until it has reached the appropriate TTL (time to live) value. When the next request is made, the page contents are refreshed. Where appropriate performance conditions exist, the page could be set to generate on every request, ensuring that the most current content is viewable as soon as it is ready in the repository. The current version of Documentum WebPublisher supports similar dynamic content but requires fully implementing WebPublisher and Site Caching Services. With WebPublisher, all published content would have to be linked to a fixed web cabinet structure, and the results would have to be pushed to the web server regardless of whether they were ever accessed. With Ligero, a few lines of code in a single file can RSS enable your entire repository. Architecture Ligero Content Delivery Server is a J2EE web application that filters content requests and responds as required. When a URL is parsed, the cache is checked to see if it has been accessed before. If the file is found in cache and has not exceeded its expiry time, the file from cache is returned. If the URL points to a file not in cache, the server will attempt to retrieve it from the content server. Depending on the file type, the documents are scanned for tags to process. The original HTML script tags were reimplemented as JSP tags and included in the arm tag lib namespace. This approach not only allows for the simple conversion of legacy content and continued use of those features, but the Ligero library also contains extensions that go beyond the original set of functionality. Developers will be able to further extend the framework with their own tags to further simplify content access (see Figure 1, page 3). When someone attempts to access a content file through a URL that the mapped anonymous account cannot see, a Ligero log-in allows the user s own credentials to be used for that session. Administrators can then grant users access to content in a consistent manner with Documentum security. Ligero 2.0 will support Primary/Secondary configurations where one instance is responsible for initial caching. This method improves horizontal scalability without creating any additional load on the repository for open content. Figure 3. 4

Figure 4. Content Access with Ligero Delivery Server Simple Document Retrieval With Ligero Delivery Server, the repository can be treated exactly like a web server. Documentum content can be made accessible through SharePoint or other portals in minutes without installing anything to either the Documentum or SharePoint servers. In the following example, the Documentum Java Docs for DFC have been imported to the repository through Webtop (see Figures 2 and 3, page 4). The same content is now browse-able from SharePoint using Ligero. Dynamic Page Composition Ligero can be used to assemble pages from other documents in the repository and combine them with query results for a truly dynamic page. In the sample below, a query gathers a list of all documents in a certain folder path, and formats them as a table of clickable links. The table is wrapped with a standard header and footer from other content. Templates can be created in the docbase so that individuals with limited coding experience can quickly build consistent pages to access Documentum managed content in many different ways. Using, Documentum s version control and workflow capabilities, the access pages are professionally managed and secure (see Figures 4 and 5). Figure 5. <%@ taglib uri= /WEB-INF/Ligero.tld prefix= arm %> <html> <head> <title>demo</title> <base href= http://ligerodemo01:8080/acmdev:/website/ligero > </head> <body> <arm:dmw_macro_options VERSION= CURRENT /> <arm:dmw_include PREDICATE= dm_document where object_name= header.html and folder( /Website/Ligero/includes ) /> 5

<table border= 1 > <tr> <th>r_object_id</th><th>object_name</th><th>title</th><th>link</th> </tr> <arm:dmw_repeat DQL= select object_name, r_object_id, title from dm_document where folder( /Website/Ligero/docs, descend) COLLECTION= q0 > <tr> <td> <arm:dmw_subst NAME= r_object_id COLLECTION= q0 /> </td> <td> <arm:dmw_subst NAME= object_name COLLECTION= q0 /> </td> <td> <arm:dmw_subst NAME= title COLLECTION= q0 /> </td> <td> <a href= http://ligerodemo01:8080/getcontent?dmw_objectid=<arm:dmw_subst NAME= r_object_id COLLECTION= q0 /> &DMW_ON_ERROR=ssi4&DMW_DOCBASE=acmdev&DMW_FORMAT=html > <arm:dmw_subst NAME= object_name COLLECTION= q0 /> </a> </td> </tr> </arm:dmw_repeat> </table> <arm:dmw_include PREDICATE= dm_document where object_name= footer.html and folder( /Website/Ligero/includes ) /> </body> </html> Tags Examples and Extensions The most popular RightSite tags were reimplemented as a JSP tag library and Armedia has implemented a number of extensions to make it even more powerful. Listed below are samples of some of the tags available. REPEAT This is a powerful tag that allows for the execution of DQL statements against an EMC Documentum repository. DMW_REPEAT tags can have web content placed between the opening and closing tags. This facilitates outputting results from the executed DQL query. The query result is stored in a COLLECTION, which is identified by a user specified value. To further enhance the ability of this tag, DMW_REPEATS can be nested within DMW_REPEATS. This allows for further querying upon returned result collections. Each DMW_REPEAT tag requires a unique COLLECTION identifier. Nested DMW_REPEATS can access any of the parent DMW_REPEAT collections. <arm:dmw_repeat DQL= select r_object_id, object_name, title, r_modify_date from dm_document where owner_name = fred ORDER BY r_modify_date COLLECTION= q0 > </arm:dmw_repeat> 6

SUBST SUBST is most often found within DMW_REPEAT tags. This tag eases the pain of getting values of attributes from with a DMW_REPEAT. It can also be used in conjunction with the DMW_SET tag. <arm:dmw_subst NAME= object_name COLLECTION= q0 /> INCLUDE An INCLUDE tag is used in the example above to pull header and footer content from other objects and include their contents inline. <arm:dmw_include PREDICATE= dm_ document where object_name= header.html and folder( /Website/Ligero/includes ) /> SET The way to look at DMW_SET is setting a variable. You can optionally declare the variable using DMW_DECLARE, but if the variable has not been previously declared, DMW_SET will do that step for you. This tag allows values to be made available to the full scope of the web page. username does not get expanded by the JSP compiler before the DMW_REPEAT tag is parsed. This means the DQL query looks for content of type dm_document owned by <%=username%>. Instead, to pass in a JSP variable: <% String username = fred ; %> <arm:dmw_set NAME= username VALUE= <%=username%> /> <arm:dmw_repeat DQL= select r_object_id, object_name, title, r_modify_date from dm_document where owner_name = <arm:dmw_subst NAME=\ username\ /> ORDER BY r_modify_date COLLECTION= q0 > </arm:dmw_repeat> RSS It is common practice to provide an RSS link for external sites to link into your web site (see Figure 6). Set EXTLINK to true and this pro- <arm:dmw_set NAME= object_name VALUE= <arm:dmw_subst NAME=\ object_name\ COLLECTION=\ q0\ /> /> <% String username = fred ; %> DMW_SET can be used for is setting values from JSP variables into DMW tags. For example, the following does not work as expected: <arm:dmw_repeat DQL= select r_object_id, object_name, title, r_modify_date from dm_document where owner_name = <%=username%> ORDER BY r_modify_date COLLECTION= q0 > </arm:dmw_repeat> Figure 6. 7

vides a link which creates the RSS news feed. A simple, effective tag easing how latest news can be pushed to a web site. Currently supported is version 0.91. This can easily be extended to support the full range of RSS versions, and even Atom. In this example, a cabinet structure of /Website/aboutus/media/news/content is mapped with the FOLDER set as the path to the CHANNEL which is then defined as news. Each Item element within the RSS feed is built from the content residing in the CHANNEL ( news folder). Set ITEMS to equal the number content items to be listed in the RSS feed. LSD_RSS tag uses r_modify_date to determine which pieces of content to display. <arm:lsd_rss VERSION= 0.91 FOLDER= /Website/aboutus/media CHANNEL= news ITEMS= 5 EXTLINK= true /> The resulting RSS XML <?xml version= 1.0?> <rss version= 0.91 > <channel> <title>ligero RSS Feed Example</title> <link>http://www.armedia.com/default.htm</link> <description>this is an example RSS feed from Ligero</description> <title>ligero Released</title> <link>http://ligero2a:8080/website/aboutus/media/news/ligerorelease.htm</link> <title>armedia and US Mint</title> <link>http://ligero2a:8080/website/aboutus/media/news/usmint.htm</link> <title>c3 Released</title> <link>http://ligero2a:8080/website/ aboutus/media/news/c3release.htm</link> <title>twp Wins InfoWorld100</title> <link>http://ligero2a:8080/website/aboutus/media/news/thewellprojectwinsinfowor ld100.htm</link> <title>scm DFD Certified</title> <link>http://ligero2a:8080/website/aboutus/me dia/news/scmdfdcertified.htm</link> </channel> </rss> Conclusion With Ligero Content Delivery Server, access to content managed by Documentum can be made simple, flexible, and scalable without complex programming. SharePoint users don t even need to know that the critical content they need to do their jobs is managed by a Documentum s authoring and workflow capabilities. For IT and administrators, content delivery is made more efficient, reliable, and flexible, and time to market for new uses of existing content assets is faster than ever. Legacy Rightsite users can now safely upgrade to Documentum D6 without rewriting content or integrated applications. Ligero Content Delivery Server - Faster than ever. www.armedia.com Lee Dallas is an EMC Proven Professional with fifteen years of experience in information technology focusing on content management and collaboration. Lee has worked with a broad range of corporate business problems including technical publishing, product data management, and records management. Prior to joining Armedia, Lee was responsible for Documentum architecture at Delta Technology (Delta Air Lines) and Senior Architect for Content Management and Collaboration at The Home Depot. He can be reached at (678) 945-4417, ext. 107 or via e-mail at ldallas@armedia.com. 8