Quickr Domino8.5 ECM Integration Best Practice.pdf
Quickr Domino8.5 ECM Integration Best Practice.pdf
Quickr Domino8.5 ECM Integration Best Practice.pdf
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.