08.01.2015 Views

Quickr Domino8.5 ECM Integration Best Practice.pdf

Quickr Domino8.5 ECM Integration Best Practice.pdf

Quickr Domino8.5 ECM Integration Best Practice.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Integrating IBM Lotus <strong>Quickr</strong> 8.5 for Domino with IBM<br />

Enterprise Content Management: Configuration and best<br />

practices<br />

Albert Wang, Software Architect, IBM Software Group, China<br />

Zheng Fei Guo, Software Engineer, IBM Software Group, China<br />

Jie Ma, Staff Software Engineer, IBM Software Group, China<br />

Zheng Wei Wang, Software Engineer, IBM Software Group, China<br />

Summary: The ability to integrate with IBM® Enterprise Content Management (<strong>ECM</strong>) was<br />

introduced in IBM Lotus® <strong>Quickr</strong> TM for Domino® 8.5. In this article we discuss how it works, and<br />

how to configure and use related features. It's assumed that you're familiar with Lotus <strong>Quickr</strong><br />

and you've already installed Lotus <strong>Quickr</strong> for Domino 8.5.<br />

Table of Contents<br />

Introduction...................................................................................................................... 1<br />

Pre-configuration.............................................................................................................. 1<br />

Configuring SSO.............................................................................................................. 2<br />

Configuring the iNotes proxy.......................................................................................... 10<br />

<strong>ECM</strong> <strong>Integration</strong> features............................................................................................... 12<br />

Conclusion..................................................................................................................... 25<br />

Resources...................................................................................................................... 26<br />

About the authors........................................................................................................... 26<br />

Introduction<br />

IBM <strong>ECM</strong> Services for Lotus <strong>Quickr</strong> leverages Lotus <strong>Quickr</strong> technologies to provide integration<br />

between your desktop applications and <strong>ECM</strong> repositories. IBM <strong>ECM</strong> Services include IBM<br />

Content Manager Services for Lotus <strong>Quickr</strong> and IBM FileNet Services for Lotus <strong>Quickr</strong>.<br />

In this article, we define <strong>Quickr</strong> Domino 8.5 <strong>ECM</strong> integration as a set of features:<br />

• <strong>ECM</strong> Document link<br />

• Customer Library<br />

• <strong>ECM</strong> Document Publish


• <strong>ECM</strong> Document Search<br />

Pre-configuration<br />

<strong>Quickr</strong> Domino uses an XML file, qpconfig.xml, for server configuration. A sample file<br />

(qpconfig_sample.xml) is located in the server's Data directory that you can use as a template.<br />

You can enable <strong>ECM</strong> integration features in qpconfig.xml as follows:<br />

<br />

Before working with <strong>ECM</strong> features, you must also enable Multiple Servers single sign-on (SSO,<br />

which is recommended) or Single Server session authentication for the Domino server. In<br />

addition, you need to configure an iNotes TM proxy because it's used as the Asynchronous<br />

JavaScript TM + XML (Ajax) proxy in <strong>Quickr</strong> Domino 8.5 to access the <strong>ECM</strong> server.<br />

Configuring SSO<br />

Follow these steps to configure SSO with WebSphere® Application Server (<strong>ECM</strong> server):<br />

1.Export the Lightweight Third-Party Authentication (LTPA) key from the WAS server with which<br />

you want to set up SSO.<br />

2.(Optional) Add the following setting to the Notes.ini file of each Lotus <strong>Quickr</strong> server to be<br />

enabled for SSO:<br />

NoWebFileSystemACLs=1<br />

This step prevents anonymous access to files in the Domino html directory.<br />

3.Create or edit the Web SSO Configuration document for the domain, enabling multi-server<br />

session-based authentication in the Server document for each Lotus <strong>Quickr</strong> server that you<br />

want to enable for SSO:<br />

a) Open the Domino Directory (Names.nsf), using the Notes or Domino Administration client.<br />

b) Select Configuration – Servers – All Server Documents.<br />

c) Select the Server document for the server and click Edit Server.<br />

d) Select Ports – Internet Ports – Web, and enable Name-and-password authentication for<br />

the Web (HTTP or HTTPS) port.<br />

e) Select Internet Protocols and click the Domino Web Engine tab.<br />

f) For the Session authentication field, select Multiple Servers (SSO).<br />

4. Now configure Web SSO:<br />

a) Click the Create Web button and select SSO Configuration (see figure 1).<br />

Figure 1. Create Web SSO Configuration


) Click Keys – Import WebSphere LTPA keys (see figure 2), and enter the path to the<br />

key and password.<br />

Figure 2. Import WAS LTPA Key's<br />

Figure 3 shows a sample configuration.<br />

Figure 3. Sample configuration


NOTE: Be sure to add a “\” before the port number of the external common LDAP server.<br />

5.In the Web SSO Configuration field, select LtpaToken (see figure 4); click Save and Close.<br />

Figure 4. Select Web SSO configuration<br />

6.Create the Domino Web Server Configuration database (domcfg.nsf), if it does not exist:<br />

a) In the Domino Administration Client, select File – Application – New.<br />

b) At the top of the New Application window (see figure 5), for the Server field, select the


server on which Lotus <strong>Quickr</strong> runs.<br />

c) In the Title field, enter a descriptive title, for example, “Web Server Configuration.”<br />

d) In the File field, enter domcfg.nsf. (This is the required file name.)<br />

e) In the Server field under the “Specify Template...” section, select any server and click<br />

Show advanced templates.<br />

f) For Template, select Domino Web Server Configuration (domcfg5.ntf); click OK.<br />

Figure 5. Create Domino Web Server Configuration database<br />

7.Create a mapping form in the Domino Web Server Configuration database to enable SSO to<br />

work with Lotus <strong>Quickr</strong>:<br />

a) Open the Web Server Configuration database (domcfg.nsf) and click Add Mapping.<br />

b) In the Applies To field, select All Web Sites/Entire Server (default) or Specific Web Site/<br />

Virtual Server. If you select Specific Web Site/Virtual Server, a new field displays in which<br />

you specify the IP addresses of the Web Site documents or Virtual Servers.<br />

c) For Target Database, enter Lotus<strong>Quickr</strong>/resources.nsf, replacing the default entry. The<br />

path is case sensitive on UNIX. If you upgraded from an earlier release and did not<br />

change the root directory name, enter QuickPlace/resources.nsf.<br />

d) For Target Form, enter QuickPlaceLoginForm, and click Save & Close.<br />

e) Replicate the database to all the Lotus <strong>Quickr</strong> servers that will use SSO.<br />

8. Enable and Update the LDAP setting section of qpconfig.xml to synchronize with the<br />

configuration of the external LDAP Server defined in the Domino SSO configuration<br />

document, using the code in listing 1.


Listing 1. Code for the LDAP settings section<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

objectClass<br />

<br />

person<br />

cn<br />

cn<br />

givenname<br />

sn<br />

mail<br />

telephoneNumber<br />

manager<br />

<br />

<br />

groupOfuniqueNames<br />

cn<br />

cn<br />

Uniquemember<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />


]]><br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

sn, givenname<br />

<br />

<br />

dn<br />

<br />

50<br />

<br />

<br />

last name, first name)<br />

]]><br />

<br />

sn<br />

<br />

<br />

<br />

9.After the Domino Web Server Configuration database has replicated, at the server console of<br />

each server, restart it, using the “restart server” command. If you see the "Successfully loaded<br />

Web SSO Configuration" message on the console, you have successfully configured SSO for<br />

the <strong>Quickr</strong> Domino Server.<br />

10.Log in to <strong>Quickr</strong> Domino as administrator and set the external LDAP server to be the same<br />

as that for the SSO configuration document (see figure 6). SSO with WebSphere Application<br />

Server is now ready to use.<br />

Figure 6. Change User Directory window of <strong>Quickr</strong> Domino server


Single Server session authentication<br />

To configure Single Server session authentication, you don't need to export or import any key<br />

(so Steps 1 and 6 above are not needed). You need only to select Single Server for the Session<br />

authentication field in Step 3, as shown in figure 7.<br />

Figure 7. Single Server option for session authentication


Now, you won't see the "Successfully loaded Web SSO Configuration" message when<br />

restarting the Domino server (as in Step 9). And when changing the user directory (Step 10),<br />

you should select “Domino Server” for the user directory Type (see figure 8).<br />

Figure 8. Change user directory type to Domino Server


Again, although <strong>ECM</strong> features can work with SSO or Single Server session authentication, SSO<br />

is the recommended method.<br />

Configuring the iNotes proxy<br />

Perform these steps to configure the iNotes proxy:<br />

1.Open the Names.nsf database, select Policies from the left-hand Navigation pane, and click<br />

the Add Policy button at the top, to create a Policies document.<br />

Enter "*/*" or “*” in the Policy name field, and select “Organizational” for the Police type field<br />

(see figure 9).<br />

Figure 9. Set up policy


Create a nNew a security document and click the Proxies tab (see figure 10). Click the Edit list<br />

button. <br />

Figure 10. Security Settings window<br />

Add your <strong>ECM</strong> servers into the white-list rule; click OK (figure 11).<br />

Figure 11. Add <strong>ECM</strong> server into white-list rule<br />

a. policy0.url=http://ecmserver01.cn.ibm.com:9080/<br />

policy0.context=/xsp/proxy/BasicProxy/


policy0.actions=GET,POST,HEAD,PUT,DELETE<br />

policy0.cookies=*<br />

policy0.headers=*<br />

policy0.mime-types=*<br />

b. policy1.url=http://ecmserver2.cn.ibm.com:9080/<br />

policy1.context=/xsp/proxy/BasicProxy/<br />

policy1.actions=GET,POST,HEAD,PUT,DELETE<br />

policy1.cookies=*<br />

policy1.headers=*<br />

policy1.mime-types=*<br />

5.Set the Security field of the Policy document to “security” (the newly created Security<br />

document from above; see figure 12).<br />

Figure 12. Choose security document


6. Save all and restart the server.<br />

<strong>ECM</strong> <strong>Integration</strong> features<br />

Creating the <strong>ECM</strong> Document Link<br />

You can create a link to a document in the <strong>ECM</strong> repository by creating a link page (see figure<br />

13).<br />

Figure 13. Create New Link Page window


As you can see in the figure, two options display when you click the Insert Link button, “File<br />

Download” and “Summary Page”. If you select File Download, then a link to the document<br />

download will be created; if you select Summary Page, then a link to the <strong>ECM</strong> Web UI of the<br />

document will be inserted.<br />

You can also create a link to a document in the <strong>ECM</strong> repository by inserting a link to External<br />

Document in the RichText Editor when creating or editing pages. (see figure 14).<br />

Figure 14. Insert Link to External Document in CKEditor


In the <strong>ECM</strong> Web UI, you can see the basic information of the document, including title, author,<br />

and date created; however, the <strong>ECM</strong> Web UI must be supported on the <strong>ECM</strong> server side.For<br />

FileNet, there is always a default application running to support the <strong>ECM</strong> Web UI after it is<br />

installed.<br />

For Content Manager Services, you should install an additional application such as IBM WEB<br />

Interface (WEBi); otherwise, when you select Summary Page, it will also insert a link to the<br />

document download.<br />

Enterprise Content search<br />

You can search over documents stored in an <strong>ECM</strong> repository by using Enterprise search. To do<br />

this, you must enable it and set the target <strong>ECM</strong> repository in qpconfig.xml as follows:<br />

<br />

Then select Enterprise Content from the drop-down menu of the search input box, and enter<br />

the key word you want to search; the Enterprise search page displays (see figure 15).<br />

Figure 15. Enterprise Content search page


There are four search parameters for advanced search:<br />

•Search scopes<br />

•Document Type<br />

•Date<br />

•User<br />

If you click the user name in the search result, it will search by that user name; and you can<br />

combine any of these four search parameters to perform a advanced search.<br />

You can also:<br />

•Search in All Enterprise Documents, My Enterprise Documents, and My Checked out<br />

Documents.<br />

•Search documents that are created from a specific Document type.<br />

•Select a start date and end date to search the documents whose last modified date fall in that<br />

range.<br />

Document Publish<br />

You can publish a document or page from <strong>Quickr</strong> to the <strong>ECM</strong> server. The default Publish Web<br />

UI (we call it the publish wizard) has two windows. The first, Publish to External Location, is<br />

used to choose the publish target location (see figure 16).<br />

Figure 16. Publish to External Location window


Using the second window, Select Publish Option, you can choose how to deal with the<br />

published document or page (see figure 17). If metadata (properties) mapping is configured,<br />

you'll also see a Metadata Mapping window with which you can edit the value of metadata.<br />

Figure 17. Select Publish Option window


Using qpconfig.xml, you can also customize the Publish Web UI, as shown in table 1.<br />

Table 1. Document Publish configuration in qpconfig.xml. qpconfig.xml parameters and their<br />

description <br />

Element<br />

http://lwptsthink47.cn.ibm.com:9080<br />

/<strong>Quickr</strong>Root/QKSmokeApplication/<br />

QKSmokeLibrary<br />

<br />

/Test/<br />

link<br />

Description<br />

URL of default <strong>ECM</strong> server.<br />

Path of default library in default <strong>ECM</strong> server.<br />

Default doc publish target folder in default <strong>ECM</strong><br />

server.<br />

Default publish action (copy, move, link).


<br />

<br />

If the value of the attribute “enabled” is false, then<br />

users cannot type the server URL in the publish<br />

wizard. The Server field will be read only, and its<br />

value is the URL of the default <strong>ECM</strong> server<br />

(targetHost ):<br />

<br />

<br />

<br />

<br />

If the value of the attribute “enabled” is true, then<br />

the Select Location window will be skipped.<br />

Documents will be published to the default folder<br />

(targetFolder) in the default library (targetLibrary) of<br />

the default <strong>ECM</strong> server (targetHost).<br />

If the value of the attribute “enabled” is true, then<br />

the Select Publish Option window will be skipped.<br />

Document publish will get default the publish action<br />

(setDefaultOperation) as its parameter.<br />

The forceDefaultPublishLocation and forceDefaultOperation parameters can be combined to<br />

achieve different Publish Web UIs, as shown in table 2.<br />

Table 2.<br />

Element Name<br />

forceDefaultPublishLocation forceDefaultOperation<br />

Output<br />

true true The Publish Wizard never displays.<br />

When you click Publish To from the<br />

context menu of a document, a preconfigured<br />

default publish location<br />

and default operation are used for the<br />

publish operation.<br />

true false The Publish Wizard does display, but<br />

the Select Location window is


skipped. The Required Properties<br />

window displays, followed by the<br />

Publish Options window, in which the<br />

publish operation is set by the value of<br />

the setDefaultOperation parameter.<br />

false true The Publish Wizard does display, but<br />

the Publish Options window is<br />

skipped. Thus the wizard starts with<br />

the Select Location window, the user<br />

specifies the target server and the<br />

target folder, enters any required<br />

properties in the next window, and is<br />

presented with a Publish button<br />

instead of a Next button, with the<br />

value of setDefaultOperation<br />

determining the publish option to be<br />

used.<br />

false false The Publish Wizard displays and<br />

exhibits its default behavior. The user<br />

can enter any location and choose<br />

any publish option, although the value<br />

of setDefaultOperation determines<br />

which publish option is the default<br />

publish operation.<br />

Configure metadata mapping<br />

In <strong>Quickr</strong> for Domino, you can customize a form to include some fields. Here a form is treated<br />

as a kind of document type, and you can then create a document from that customized form.<br />

Metadata mapping between <strong>Quickr</strong> and <strong>ECM</strong> is illustrated in figure 18, in which we map a form<br />

to a document type, and F is field, PST is property sheet type, and P is property. Then, when<br />

you publish a <strong>Quickr</strong> document created from that form, Lotus <strong>Quickr</strong> uses the mapped<br />

document type to create an <strong>ECM</strong> document, and the property's value will be the mapped field's<br />

value.<br />

Figure 18. <strong>Quickr</strong> form mapped to <strong>ECM</strong> document type


In <strong>Quickr</strong> for Domino, there are two kinds of documents, Page and Document, and before<br />

working with metadata mapping, you should understand the difference between them: When a<br />

document has a Single Attachment field but no Rich Text field, it is a Document; otherwise, it is<br />

a Page.<br />

So, when customizing a form (see figure 19), once you add the Single Attachment field but no<br />

Rich Text field, the document created from that form is a Document. Let's call this kind of form<br />

a "Document Form" and the other kind of form a "Page Form".<br />

Figure 19. Customize form window<br />

In the <strong>Quickr</strong> for Domino 8.5 Web UI, when you upload or import a file, it is a Document, others<br />

like page, link, Forum Topic and response, comments, list items and so on are all pages. are Pages.


On the <strong>ECM</strong> server side, you can create a Page from some—but not all—document types in the<br />

<strong>ECM</strong> repository. Not all document types support Pages, but all document types supporting<br />

Pages also support Documents.<br />

So, it's OK to map a Document Form to a document type supporting a Page, but if you try to<br />

map a Page Form to a document type that doesn't support Page, it will fail.<br />

Table 3 lists the metadata mapping types that are supported in <strong>Quickr</strong> for Domino.<br />

Table 3. Mapping types and their descriptions<br />

Mapping Types<br />

Explicit mapping<br />

Semi-implicit mapping<br />

N fields to One property<br />

mapping<br />

Description<br />

Configures which form is mapping to which document type on the <strong>ECM</strong><br />

server side, and which field is mapping to which property implicitly.<br />

Configures which form is mapping to which document type on the <strong>ECM</strong><br />

server side explicitly, but does not configure which field is mapping to which<br />

property. If one field's name in <strong>Quickr</strong> matches one property's name, then<br />

they are mapped implicitly.<br />

More than one field is mapping to only one property (this is a subcategory of<br />

Explicit mapping). The fields' names should be separated by a blank space.<br />

Perform the following steps to use metadata mapping:<br />

1. Customize a DemoForm in Lotus <strong>Quickr</strong>, adding a Plain Text field, a Date Pop-up field, and<br />

an Attachments field.<br />

2. Configure qpconfig.xml to apply one of these three mapping types. You can run qptool to<br />

help to generate the mapping table:<br />

load qptool execute -i input.xml -o output.xml<br />

where the content of input.xml is shown in listing 2.<br />

Listing 2. Code for input.xml<br />

<br />

<br />

<br />

<br />

QDServer.cn.ibm.com<br />

<br />

<br />

demomapping<br />

<br />

<br />


<br />

3.Change “hostname” to your actual <strong>Quickr</strong> server's hostname, and change “name” to your<br />

place name. The draft mapping is generated in output.xml:<br />

<br />

<br />

<br />

<br />

<br />

4.Copy and paste the draft mapping into qpconfig.xml. You can then change it to set the<br />

different mapping types, as follows:<br />

• Explicit mapping<br />

<br />

<br />

<br />

<br />

<br />

• Semi-implicit mapping<br />

<br />

<br />

<br />

• N fields to One property mapping<br />

<br />

<br />

<br />

<br />

<br />

NOTE: When mapping N fields to One property, the property can only be the String type.<br />

5. Create a page from DemoForm and select Publish to in its context menu or page view. In the<br />

Publish Wizard you can now see the Edit Document Properties view. Fill in those properties<br />

and publish it to <strong>ECM</strong> repository.<br />

Custom Library<br />

Custom Library is used to “directly” connect you to the <strong>ECM</strong> server. You can access and<br />

manipulate contents in the <strong>ECM</strong> repository the same as in your <strong>Quickr</strong> library. You can also<br />

view, upload, check out, check in, and update documents on the <strong>ECM</strong> server in your <strong>Quickr</strong>


Web UI.<br />

Follow these steps to use Custom Library:<br />

1. Create a Custom Library page by choosing Place Actions -- New page – Custom Library, or<br />

Library – New – Custom Library. Custom Library has the same attributes as Document, such<br />

as Name, Description, access control setting, and location (see figure 20).<br />

Figure 20. New Custom Library window<br />

2.To connect to the <strong>ECM</strong> server, you must configure the custom library. From the <strong>Quickr</strong><br />

ConfigureOpen the newly created custom library page, click the Configure link or select More<br />

Actions – Configure, in the Action bar. to configure the custom library(see figure 21).<br />

Figure 21. Configure Custom Library


3.In the connect to a Library of Folder tab, Eenter the <strong>ECM</strong> server URL in the Server field,<br />

enable (check mark) the “Log in with my current credentials” field, and then choose a folder or<br />

subfolder of the <strong>ECM</strong> server as root of your Custom Library (see figure 21).<br />

If you want to log in to the <strong>ECM</strong> server using another account, just un-check the Log in with my<br />

current credentials checkbox and input that account's user name and password.<br />

<br />

Figure 21. Connect to a Library or Folder tab<br />

4.Click the Configure Default View tab of the Custom Library, to configure how many columns<br />

to display (see figure 22). Click OK to save your configuration.<br />

Figure 22. <br />

Now you can see the contents in the <strong>ECM</strong> server and, just like in your <strong>Quickr</strong> Library, you can:<br />

• View the Custom Library in either detailed or compact mode<br />

• Upload files with default or customized document type<br />

• Create, rename, or delete documents<br />

• View, replace, edit properties, check out, check in, delete, and download documents<br />

• Create, rename, and delete folders<br />

• Switch views that are provided by the <strong>ECM</strong> server


Figure 23. <br />

Figure 24. <br />

Figure 25. <br />

Conclusion<br />

You should now have a detailed understanding of the features of <strong>Quickr</strong> for Domino <strong>ECM</strong><br />

integration. We've introduced you to all its major components, how they function, and how you<br />

can use them. Hopefully you can use this article to take full advantage of the powerful<br />

functionality of <strong>Quickr</strong> for Domino <strong>ECM</strong> integration to make your job easier.<br />

Resources<br />

Lotus <strong>Quickr</strong> and Enterprise Content Management:<br />

http://www-01.ibm.com/software/lotus/products/quickr/ecm/<br />

Lotus <strong>Quickr</strong> integration with IBM <strong>ECM</strong>:<br />

http://www.ibm.com/developerworks/forums/forum.jspaforumID=1823<br />

Lotus <strong>Quickr</strong> wiki:<br />

http://www-10.lotus.com/ldd/lqwiki.nsfOpenDatabase<br />

Content Manager Enterprise Edition, <strong>Integration</strong> with Lotus <strong>Quickr</strong>:<br />

http://www-01.ibm.com/software/data/cm/cmgr/mp/edition-enterprise/quickr.html<br />

About the authors<br />

Albert Wang is a Software Architect based at IBM's China Development Lab (CDL) in Beijing,<br />

where he serves as the <strong>Quickr</strong> Domino Architect and Tech Leader. He's been an author of five<br />

Chinese books on computer programming; He's published 30+ papers on computer<br />

technolegygers in international conferences or Chinese magazinesAcademic Journals. You can reach him at wangxu@cn.ibm.com.<br />

Zheng Fei Guo is a Software Engineer at IBM's CDL, working on Lotus <strong>Quickr</strong> for Domino for


the past several years. He has extensive experience with Web 2.0 applications and<br />

collaboration software. You can reach him at guozf@cn.ibm.com.<br />

Jie Ma is a Staff Software Engineer, Functional Verification Test lead, and PM/Scrummaster of<br />

the Lotus <strong>Quickr</strong> <strong>ECM</strong> <strong>Integration</strong> team. He's also experienced in Agile software development.<br />

You can reach him at majie@cn.ibm.com.<br />

Zheng Wei Wang is a Software Engineer in IBM's CDL, working on Lotus <strong>Quickr</strong> for Domino<br />

8.5 development. You can reach him at zwwang@cn.ibm.com.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!