IBM Forms integration with Connections 4.5 I downloaded the following files prior to installing: IBM Forms Experience Builder v8.5 For Connection V4.5 for Intranet and Extranet Interim Feature Release 1 Windows Multilingual eAssembly (CRP1HML) - IBM Forms Experience Builder V8.5 Windows Multilingual (CIJM3ML) These were the steps I followed to install and configure IBM Forms Experience Builder 8.5 (FEB) with Connections 4.5 on an existing server running Connections 4.5 cr2 This is the same machine I document the install steps for Connections 4.5 install https://w3-connections.ibm.com/files/app#/file/5bd3c806-c2a5-4c83-a15d7f6c594cdedc Connections 4.5 cr1 upgrade https://w3-connections.ibm.com/files/app#/file/6ab64953-99cf-414f-9384161660801b0f Connections 4.5 cr2 upgrade https://w3-connections.ibm.com/files/app#/file/f04427c5-4c80-4579-9d213fbe48cba07b IBM Forms integration with Connections 4.5 .................................................................... 1 1. Create FEB database ................................................................................................... 2 2. Configure WebSphere for FEB ................................................................................... 3 3. Install Forums Experience Builder ............................................................................. 5 3.1. FEB Post Install Steps ........................................................................................ 18 4. Integrate IBM Connections with FEB ...................................................................... 29 1. Create FEB database This step involves creating the database used by Forms Experience Builder 1. Start the DB2 Command Window 2. Run C:\IBM\SQLLIB\BIN> db2 "CREATE DB FEBDB using codeset UTF-8 territory us PAGESIZE 32768" NOTE: When I did this I got the following error: SQL1041N The maximum number of concurrent databases have already been started. SQLSTATE=57032 To resolve this run db2 get dbm cfg Look for Max number of concurrently active databases Increase this by running (I set mine to 20) db2 update dbm cfg using numdb 20 and restart DB2 (NUMDB) = 14 3. connect to the DB by running C:\IBM\SQLLIB\BIN>db2 connect to FEBDB 4. create a User Temporary table space by running C:\IBM\SQLLIB\BIN> db2 "CREATE USER TEMPORARY TABLESPACE LARGE_USERTEMP PAGESIZE 32k MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 16 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULTBP" 2. Configure WebSphere for FEB This step involves setting up WAS for Forms Experience Builder. I could chose to install FEB into the same server as I have connections installed, but I wanted to have it run in its own application server, so I did the following: If you were installing this on its own machine, you would install WebSphere using the IBM Install Manager, then create a Application Server profile. Similar to sections 1.1 1.3 of my Connections 4.5 install document (only a Application Server profile in section 1.3 instead of a Cell profile) In our case we are installing FEB on the same machine as Connections, so we will just create a profile in the existing App server installed during the connections install. The follow steps are how we did that: 1. Run C:\IBM\WebSphere\AppServer\bin\manageprofiles.bat -create -templatepath C:\IBM\WebSphere\AppServer\profileTemplates\default -adminUserName localadmin -adminPassword password This will create a AppSrv03 profile in C:\IBM\WebSphere\AppServer\profiles 2. Federate this new server into the DMGR by running: addNode.bat cpricesm.swg.usma.ibm.com 8879 -profileName AppSrv03 -username localadmin -password password 3. Start server1 in AppServer03 by running C:\IBM\WebSphere\AppServer\profiles\AppSrv03\bin>startServer.bat server1 3. Install Forums Experience Builder Software needed for this step IBM Forms Experience Builder v8.5 For Connection V4.5 for Intranet and Extranet Interim Feature Release 1 Windows Multilingual eAssembly (CRP1HML) - IBM Forms Experience Builder V8.5 Windows Multilingual (CIJM3ML) Extract the download file to a temp directory. I used C:\downloads\forms\feb85\ 1. Run C:\downloads\forms\feb85\launchpad.exe 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 3.1. FEB Post Install Steps 3.1.1. Setup the Builder_config.properties http://www10.lotus.com/ldd/lfwiki.nsf/xpDocViewer.xsp?lookupName=Forms%20Experience%20B uilder%208.5%20documentation#action=openDocument&res_title=Configuring_the_pro perties_file_FEB_850&content=pdcontent 1. Check C:\IBM\Forms\extensions (/opt/ibm/Forms/extensions (non-Windows)) for Builder_config.properties. If it does not exist copy it from <FEB_Install/deploy folder (C:\IBM\FormsExperienceBuilder\deploy in my environment) to the extensions directory 2. Ensure ibm.was.MemberManager.adminAlias is set to febAdmin This is a j2calias role in WebSphere that is set to the WAS admin user / password for the environment. It allows forms to talk to WebSphere VMM to validate users 3. At the end of the file uncomment and set ibm.nitro.NitroConfig.serverURI to the url you will use to access the forms server ibm.nitro.NitroConfig.serverURI = http://cpricesm.swg.usma.ibm.com/forms 3.1.2. Setup FEB post install I am following the steps here: http://www10.lotus.com/ldd/lfwiki.nsf/xpDocViewer.xsp?lookupName=Forms%20Experience%20B uilder%208.5%20documentation#action=openDocument&res_title=Completing_the_post _installation_tasks_FEB_850&content=pdcontent 1. Open a browser to http://cpricesm.swg.usma.ibm.com:9084/forms NOTE: If you are unsure of the port, check C:\IBM\WebSphere\AppServer\profiles\AppSrv03\logs\ AboutThisProfile.txt and look at the HTTP transport port: 9084 2. 3. 4. 5. 6. 7. You should be taken to the following screen At this point we need to extra table spaces in the database to minimize the database size as applications are created. 8. Open the DB2 command 9. On the db2 > prompt connect to the forms database (FEBDB) db2 > connect to FEBDB 10. Run the following commands a. CREATE BUFFERPOOL FEB4KBP IMMEDIATE SIZE 250 AUTOMATIC PAGESIZE 4 K b. CREATE LARGE TABLESPACE USERSPACE4K PAGESIZE 4 K MANAGED BY AUTOMATIC STORAGE BUFFERPOOL FEB4KBP c. CREATE BUFFERPOOL FEB8KBP IMMEDIATE SIZE 250 AUTOMATIC PAGESIZE 8 K d. CREATE LARGE TABLESPACE USERSPACE8K PAGESIZE 8 K MANAGED BY AUTOMATIC STORAGE BUFFERPOOL FEB8KBP e. CREATE BUFFERPOOL FEB16KBP IMMEDIATE SIZE 250 AUTOMATIC PAGESIZE 16 K f. CREATE LARGE TABLESPACE USERSPACE16K PAGESIZE 16 K MANAGED BY AUTOMATIC STORAGE BUFFERPOOL FEB16KBP 3.2. Configure Forms with IBM HTTP Server This is not a manditory step, but I find it easier to work with when everything is using the stardard ports, so here is what I did. 1. Open a browser to the dmgr /ibm/console and login 2. Go to Applications - Application Types - WebSphere enterprise applications and click on Forms Experience Builder 3. Select Manage Modules 4. Select the node it's currently running as well as webserver1 and click Apply 5. Click OK (Notice how the Server list is updated for each Module 6. Click Save 7. Go to Servers - Server Types - Web servers select webserver1 and click Generate Plug-in 8. At this point make sure the plugin generated is the one being used by http (check the httpd.conf for the plugin-cfg.xml being used) and either manualy copy it to the correct location or use Propagate Plug-in and again make sure it's being copied to the correct location. 9. Restart the IBM HTTP Server 10. You should now be able to open a browser to http://cpricesm.swg.usma.ibm.com/forms and https://cpricesm.swg.usma.ibm.com/forms 4. Integrate IBM Connections with FEB For this I'm following the steps outlined in the following FEB infocenter topics http://www10.lotus.com/ldd/lfwiki.nsf/xpDocViewer.xsp?lookupName=Forms+Experience+Builder +8.5+documentation#action=openDocument&res_title=Integrating_with_IBM_Connecti ons_FEB_850&content=pdcontent These topics include instructions on deploying the Surveys and Featured Survey widgets for Connections Communities. When you integrate Forms Experience Builder and Connections, you can add a survey widget to your Connections installation that can capture data and share it easily with your community in an activity stream. 4.1. Deploy Connections_config.properties and integration jar files 1. Verify the following file exists in C:\IBM\Forms\extensions (/opt/ibm/Forms/extensions (non-Windows)) ... Connections_config.properties If the file does not exist, copy it from C:\IBM\FormsExperienceBuilder\deploy\widget\extensions 2. Edit C:\IBM\Forms\extensions\Connections_config.properties and ensure the following 2 parameters are uncommented and set ibm.nitro.integrations.connections.Config.communityRoot=http://cpricesm.swg.u sma.ibm.com/communities ibm.nitro.integrations.connections.Config.authAlias=connectionsAdmin 3. Verify the following jar files exist in C:\IBM\Forms\extensions (/opt/ibm/Forms/extensions (non-Windows)) ibm.fsp.ext.org.apache.commons.configuration-1.5_r2.jar ibm.fsp.ext.org.apache.commons.digester-1.8.0.0_r5.jar ibm.fsp.ext.sonata-4.5.0.20130311-1253_r1.jar ibm.fsp.ext.waltz-4.5.0.20130311-1253_r1.jar ibm.nitro.integrations.connections.core-8.5.0.244.jar ibm.nitro.integrations.connections.lifecycle-8.5.0.244.jar If they do not exist copy them from C:\IBM\FormsExperienceBuilder\deploy\widget\extensions 4.2. Register resource bundle for FEB iWidget titles and descriptions 1. Extract C:\IBM\FormsExperienceBuilder\deploy\widget\ ibm.nitro.integrations.connections.c lient-8.5.0.244.zip to C:\IBM\Connections\data\shared\customization\strings 2. Register the resource bundle file with connections by running the following commands from a command prompt: a. cd C:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin\ b. wsadmin -lang jython -user localadmin -password password -port 8879 c. wsadmin>execfile("connectionsConfig.py") d. wsadmin>LCConfigService.checkOutConfig("c:/tempids","CPRICESMCell01") e. wsadmin>Connections configuration file successfully checked out f. go to C:\tempids and edit the LotusConnnections-config.xml file Near the bottom of the file look for the <resources> section, add the following in that section: <widgetBundle prefix="formiwidget" name="ibm.nitro.integrations.connections.client.resources"/> Save and Close the file g. Back in the wsadmin console run: wsadmin>LCConfigService.checkInConfig("c:/tempids","CPRICESMCell01") For this to take effect we will need to restart Connections, but we will wait until all config files are updated before restarting. 4.3. Enable the custom FEB widgets 1. Copy C:\IBM\FormsExperienceBuilder\deploy\widget\ ibm.nitro.integrations.connections.p ackaging.client-8.5.0.244.jar to C:\IBM\Connections\data\shared\provision\webresources\ ibm.nitro.integrations.conn ections.packaging.client-8.5.0.244.jar 2. Register the widget in widgets-config.xml by running the following commands: a. cd C:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin\ b. wsadmin -lang jython -user localadmin -password password -port 8879 c. wsadmin>execfile("communitiesAdmin.py") d. wsadmin>CommunitiesConfigService.checkOutWidgetsConfig("c:/tempids","CP RICESMCell01") e. go to C:\tempids and edit widgets-config.xml Find the resource section that has a type="community" and add the following lines: NOTE: also, make sure to update the section in bold below to be your form server : port <widgetDef defId="Surveys" description="Surveys.desc" bundleRefId="formiwidget" primaryWidget="true" showInPalette="true" modes="view edit fullpage" uniqueInstance="true" loginRequired="false" url="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/Survey s.xml" helpLink="http://www10.lotus.com/ldd/lcwiki.nsf/dx/Using_surveys_in_Connections_communities" iconUrl="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/im ages/survey_widget_icon.png"> <itemSet> <item name="formSeverBaseUrl" value="/forms"/> <item name="surveyNumberInOverview" value="5"/> <item name="communitiesSvcRef" value="{communitiesSvcRef}"/> <item name="webresourcesSvcRef" value="{webresourcesSvcRef}"/> <item name="opensocialSvcRef" value="{opensocialSvcRef}"/> <item name="version" value="{version}"/> </itemSet> <lifecycle remoteHandlerURL="http://cpricesm.swg.usma.ibm.com/forms/secure/org/lifec ycle" remoteHandlerAuthenticationAlias="connectionsAdmin"> <event>community.members.added</event> <event>community.members.removed</event> <event>widget.added</event> <event>widget.removed</event> <event>community.updated</event> <event>community.visibility.changed</event> <event>community.prepare.delete</event> <event>community.members.modified</event> <event>community.org.changed</event> </lifecycle> </widgetDef> <widgetDef defId="FeaturedSurvey" description="FeaturedSurvey.desc" bundleRefId="formiwidget" primaryWidget="false" showInPalette="true" modes="view edit" loginRequired="false" uniqueInstance="false" url="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/SingleS urvey.xml" iconUrl="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/im ages/survey_widget_icon.png"> <itemSet> <item name="formSeverBaseUrl" value="/forms"/> <item name="communitiesSvcRef" value="{communitiesSvcRef}"/> <item name="webresourcesSvcRef" value="{webresourcesSvcRef}"/> <item name="opensocialSvcRef" value="{opensocialSvcRef}"/> <item name="version" value="{version}"/> </itemSet> </widgetDef> NOTE: This part can be a bit tricky finding where to add these lines in the existing file. I put them just below the close tag for <widgetDef defId="Library".... ..... </widgetDef> and above <widgetDef bundleRefId="quickrCommunityLibrary_res" defId="LinkedQuickrCommunityLib" Save and close the file. f. back in the wsadmin> prompt run wsadmin>CommunitiesConfigService.checkInWidgetsConfig("c:/tempids","CPR ICESMCell01") g. exit out of the wsadmin prompt 3. Restart Connections 4. After restart, verify Connections can access the ibm.nitro.integrations.connections.packaging.client-8.5.0.244.jar resource by going to http://cpricesm.swg.usma.ibm.com/connections/resources/web/com.ibm.form.integrat ions.formiwidget/Surveys.xml At this point the survey widget should be available to community members 5. If you open a community and go to customize, you should see the survey and FeaturedSurvey listed. 4.4. Configure widget in homepage and Activity Stream 1. Open a browser to /homepage and login as the homepage administrator (i.e. a user in the admin role of the homepage application 2. Click Administration in the navigation. 3. Click the Add another widget button. 4. Select the following options: Open Social Gadget. In the Security section, choose Trusted. In the UI integration points section, check the Show for Activity stream events check box. In the Server access via Proxy section, select All servers. Add a Widget Title and the URL address and the secure URL address. The gadget URL is ${COMMON_CONTEXT_ROOT}/web/com.ibm.form.integrations.formiwidget/Sur veyInStream.xml. note: It should be written exactly like this Do NOT select any of the other options. This widget only works in the Activity Stream, and will not work on the My Page with other widgets 5. Click Save 6. Enable the gadget by clicking the Enable button in the Disabled widgets list. 7. To quickly check to set up, Create a survey in a community you are following 8. In homepage access the I'm Following page, you will see the survey and can hover over it to see the questions and take the survey 9. Once you hit submit, you will see the results