This article discusses how to integrate Confluence Wiki with the Communities feature of Lotus Connections v2.0. It documents the steps used by the Lotus System Verification Test (SVT) team to set up and test this environment.
Introduction
Communities are an important component of Lotus Connections. Communities bring together people with common interests, to share bookmarks and feeds with community members. For Lotus Connections v2.0, you can use a third-party product of Confluence Wiki integrated with Communities. With this integration, you can realize content and member synchronization, and users will have more places to write, organize, and share information.
Quick guide for Confluence wiki server installation
While we will not go into great detail for the Confluence Wiki server deployment, here are the basic steps:
1. Install the Confluence Server
Confluence can be deployed in two modes: Standalone Edition and EAR-WAR Edition.
For reference, see the install guide on the Confluence wiki website.
2. Run the Confluence Setup Wizard
After Confluence is installed, the next step is to proceed to the Confluence Setup Wizard.
For reference, see the setup guide on the Confluence wiki website.
Note: You should use Confluence v2.7, the version for which the Confluence plug-in was developed.
Specific configuration steps related with Lotus Connections integration
A. Configure Confluence for LDAP
To integrate a Confluence wiki into Lotus Connections, make sure the same LDAP is used by the two products. The integration needs the same LDAP used by Lotus Connections and Confluence wiki. The LDAP supported by both the products include IBM Directory Server (IDS), Microsoft Active Directory (AD), and eDir.
Steps:
1) Configure LDAP repository. Find the configuration file "atlassian-user.xml". Customize the LDAP repository section in the file for your LDAP server.
2) Restart Confluence server.
3) Log in to the Confluence server as admin to grant Confluence login access to your LDAP groups and users:
Go to Administration -> Security -> Global Permissions. From this page, search LDAP group or users, then add them and grant related access.

B. Configure Confluence for SSL
For security consideration, enable SSL.
Steps:
1) Create an SSL certificate
Example for Microsoft Windows:
Perform this command ""%JAVA_HOME%\bin\keytool" -genkey -alias tomcat -keyalg RSA"
Answer some questions, then you will find the keystore file generated under the path "C:\Documents and Settings\\#CURRENT_USER#\.keystore"
2) Modify the server.xml file under path "/conf/server.xml", Uncomment the Connector below, then add "keystorePass" shown in bold, Change to the password specified for the certificate when you generated it.
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
URIEncoding="UTF-8" keystorePass=""/>
3) Restart Confluence server.
4) Access server via https://:8443/.
C. Enable trust certificate between Lotus Connections and Confluence
After configuring Confluence for SSL, enable trust certificate between Lotus Connections and Confluence.
Steps:
1) Export SSL certificate from Confluence server.
2) Go to WebSphere Application Server console of Lotus Connections. From Security -> SSL certificate and key management -> Key stores and certificates -> CellDefaultTrustStore -> Signer certificates, import the certificate exported at Step 1.
3) Then restart WebSphere Application Server.
Configure Confluence plugin for Communities of Lotus Connections
Refer to the Lotus Connections Information Center topic "Lotus Connections Connector for Confluence" for steps to set up the plug-in. You can use these steps below for a manual setup if needed.
1. Copy Confluence Plugin Jar file and Apache XML-RPC libraries (ws-commons-util-1.0.2.jar, xmlrpc-client-3.1.jar, xmlrpc-common-3.1.jar) to
"...\WebSphere\AppServer\profiles[PROFILE]\installedApps[CELL]\Communities.ear\tango.web.ui.war\WEB-INF\lib"
Note: If a cluster, you need to copy the files to each node.
2. Copy Confluence Plugin Config Files
Copy communities-confluence-config.xsd to "...\WebSphere\AppServer\profiles[PROFILE]\config\cells[CELL]\LotusConnections-config"
Copy communities-confluence-config.xml to "...\WebSphere\AppServer\profiles[PROFILE]\config\cells[CELL]\nodes[NODE]\LotusConnections-config"
3. Set up an authentication alias for the superuser
Go to WebSphere Application Server Admin console, From Security -> secure administration, applications, infrastructure, Expand Java Authentication and Authorization Service, Click on JAAS - J2C Authentication data, new an Alias. User ID and Password should be admin user for Confluence wiki.

4. Edit communities-confluence-config.xml

Set 'enabled' to true;
The wikiHost, wikiHostPort, wikiHostSslPort need to be updated for the Confluence wiki server;
The usernameAttr is the LDAP attribute used as the login id for the Confluence wiki server;
The baseUri need to be updated for the Confluence wiki server, leave it blank if no need for “/confluence”;
The authentry should be alias name added at Step 3. Note the name should be “nodename/aliasname”;
The ldapHost and ldapPort are the hostname and port for the LDAP server used by the Communities server and Confluence server.
The apiBaseUri and ldapContextFactory should remain unchanged.
5. Restart the WebSphere Application Server.
Note: If a cluster, you need to fully resynchronize nodes.
The Confluence wiki integration in Lotus Connections configuration is complete. You can associate a Confluence wiki with a community when you start a Community, as shown in this screen capture:

NOTE: All customer environments are different. Our results were obtained in a controlled test environment. Customer environments are typically less optimal and may not provide the same results. Understanding your environment (usage scenario, network, etc...) is crucial before recommending scaling numbers, hardware and solutions.
Content written by the Lotus SVT team and posted on their behalf