+

Search Tips   |   Advanced Search

Integrate Forms Experience Builder


Overview


Integrate Forms Experience Builder with Connections

  1. Install the Forms Experience Builder software

    FEB and Connections can be on separate hosts or the same host. Both FEB and Connections need to be federated into the same Dmgr.

  2. On FEB host, review....

    ...and set...

    At the end of the file uncomment and set ibm.nitro.NitroConfig.serverURI to the url used to access the forms server...

      ibm.nitro.NitroConfig.serverURI = http://myformshost.myco.com/forms

  3. On FEB host, deploy Connections_config.properties and integration jar files...

    1. Verify the following file exists...

        /opt/IBM/Forms/extensions/Connections_config.properties

      If the file does not exist, copy it from...

        /opt/IBM/FormsExperienceBuilder/deploy/widget/extensions

    2. Edit

        /opt/IBM/Forms/extensions/Connections_config.properties

      ...and set...

        ibm.nitro.integrations.connections.Config.communityRoot=http://cnxhost/communities
        ibm.nitro.integrations.connections.Config.authAlias=connectionsAdmin

    3. In...

        /opt/IBM/Forms/extensions

      ...verify the following jar files exist...

        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-5.0.0.20140607-2100_r1.jar
        ibm.fsp.ext.waltz-5.0.0.20140607-2100_r1.jar
        ibm.nitro.integrations.connections.core-8.5.1.489.jar
        ibm.nitro.integrations.connections.lifecycle-8.5.1.489.jar

    4. If they do not exist, copy them from...

        /opt/IBM/FormsExperienceBuilder/deploy/widget/extensions/

  4. In Connections dmgr, verify J2C authentication alias febAdmin has correct user name and password.

    Use same id as that used by connectionsAdmin

  5. Register the resource bundle to provide titles and descriptions for iWidget

    Is this optional?

    1. Copy forms resource bundle from forms host to CNX host.

        cd /opt/IBM/FormsExperienceBuilder/deploy/widget/
        scp ibm.nitro.integrations.connections.client-buildNumber.zip CNX_HOST:/opt/shared_disk/Connections50/data/shared/customization/strings

      ...where destination directory = CONNECTIONS_CUSTOMIZATION_PATH

    2. On CNX host, unzip forms resource bundle

        cd /opt/shared_disk/Connections50/data/shared/customization/strings
        unzip ibm.nitro.integrations.connections.client-buildNumber.zip

  6. Configure LotusConnections-config.xml

    1. Check out the Connections configuration file...

        cd DMGR_PROFILE/bin
        ./wsadmin.sh -lang jython -user wasadmin -password password
        execfile("connectionsConfig.py")
        LCConfigService.checkOutConfig("/tmp", "cell_name")

      To get cell_name: print AdminControl.getCell()

    2. Edit LotusConnections-config.xml, and register the resource bundle by adding the following line of code into the <resources> element block...

      The value of attribute 'prefix' must be globally unique as it identifies the bundle when used in IBM Connections. The bundle prefix maps to the bundle ID reference specified when we define a custom resource attribute or widget.

    3. Save changes to LotusConnections-config.xml .

    4. Check in the updated file and exit wsadmin...

        LCConfigService.checkInConfig("/tmp", "cell_name")
        exit

    5. Restart the Common application using the WAS console.

  7. Enable custom widgets for Communities

    1. From FEB host...

        scp /opt/IBM/FormsExperienceBuilder/deploy/widget/ibm.nitro.integrations.connections.packaging.client-buildNumber.jar CNX_HOST:/CONNECTIONS_PROVISION_PATH/webresources/

      CONNECTIONS_PROVISION_PATH can be found from...

      For example...

        /opt/shared_disk/Connections50/data/shared/provision/webresources/ibm.nitro.integrations.connections.packaging.client-8.5.1.489.jar

    2. Check out widgets-config.xml...

        cd $DMGR_PROFILE/bin
        ./wsadmin.sh -lang jython -user wasadmin -password password
        execfile("communitiesAdmin.py")
        CommunitiesConfigService.checkOutWidgetsConfig("/tmp", "cell_name")

    3. Edit widgets-config.xml and find the resource section that has...

        type="community"

    4. Set set widget definitions for Surveys and Featured Surveys.

      In the <lifecycle> stanza, replace FORMS_SERVER_HOST:PORT with our Forms Experience Builder host and 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/Surveys.xml" 
                     helpLink="/topic/com.ibm.lotus.connections.communities.surveys.help/community_survey_frame.html" 
                     iconUrl="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/images/survey_widget_icon.png">
                    <itemSet>
                        <item name="formServerBaseUrl" 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://FORMS_SERVER_HOST:PORT/forms/secure/org/lifecycle" 
                         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/SingleSurvey.xml"
                     helpLink="/topic/com.ibm.lotus.connections.communities.surveys.help/community_survey_frame.html"
                     iconUrl="{webresourcesSvcRef}/web/com.ibm.form.integrations.formiwidget/images/survey_widget_icon.png">
      
                 <itemSet>
                   <item name="formServerBaseUrl" value="/forms"/>
                   <item name="communitiesSvcRef" value="{communitiesSvcRef}"/>
                   <item name="webresourcesSvcRef" value="{webresourcesSvcRef}"/>
                   <item name="opensocialSvcRef" value="{opensocialSvcRef}"/>
                   <item name="version" value="{version}"/>
                 </itemSet>
      
          </widgetDef>
      

    5. Check the file back in

    6. Restart the Communnities application with the WAS console.

    7. Verify the resource is available for access by visiting the Connections resource...

        http://CNX_HOST:CNX_PORT/connections/resources/web/com.ibm.form.integrations.formiwidget/Surveys.xml

  8. Enable the help plug-in

    1. Go to...

        app_server_root/profiles/dm_profile_root/bin

      ...and modify connectionsConfig.py to add a survey component....

          # Names of the Connections services for setHelp
          allComponents = ["activities", "blogs", "bookmarks", "communities", "files", "forums", "homepage", "profiles", "wikis", "icmail", "ibmdocs", "survey"]
      
          # help TOC entries corresponding to the Connections services
          tocEntries = ["/com.ibm.lotus.connections.activities.help/activities_FAQ.xml",
          "/com.ibm.lotus.connections.blogs.help/blogs_faq.xml",
          "/com.ibm.lotus.connections.bookmarks.help/dogear_faQ_dframe.xml",
          "/com.ibm.lotus.connections.communities.help/communities_FAQ.xml",
          "/com.ibm.lotus.connections.files.help/files_FAQ.xml",
          "/com.ibm.lotus.connections.forums.help/forums_FAQ.xml",
          "/com.ibm.lotus.connections.homepage.help/homepage.xml",
          "/com.ibm.lotus.connections.profiles.help/ProfilesFAQ.xml",
          "/com.ibm.lotus.connections.wikis.help/wikis_FAQ.xml",
          "/com.ibm.connections.mail.help/icm_mailcal_FAQ.xml",
          "/com.ibm.help.ibmdocs.doc/toptoc.xml",
          "/com.ibm.lotus.connections.communities.surveys.help/community_surveys.xml"]
      

    2. Add the Survey Help plug-in to the IBM Connections Help.ear application.

        cd app_server_root/profiles/dm_profile_root/bin
        ./wsadmin.sh -lang jython -user admin_user_id -password admin_password -port SOAP_CONNECTOR_ADDRESS_PORT.
        AdminApp.update("Help", "partialapp", ["-operation", "addupdate", "-contents", "/tmp/survey.help.update-<buildNumber>.zip"])

      To find survey.help.update-buildNumber.zip, go to...

        FEB_INSTALL/deploy/widget/

      ...on the system where IBM Forms Experience Builder is installed.

      Cannot find

    3. Access the IBM Connections configuration files:

        execfile("connectionsConfig.py")

    4. Specify which applications to include in the help system's table of contents:

        LCConfigHelp.setHelp("/tmp","application_name","application_name")

      An XML file named helpData.xml is added to /tmp, and is used by the command.

      Application names include...

        activities
        blogs
        bookmarks
        communities
        files
        forums
        home page
        profiles
        wikis
        icmail
        ibmdocs
        survey

      For example, if you installed all applications except for wikis and Connections Mail, the command would appear as: LCConfigHelp.setHelp("c:/temp","activities","blogs","bookmarks","communities","files","forums","homepage","profiles", "ibmdocs", "survey")

      Before you deploy Survey help, display the existing Connections Help content by clicking the Help menu, and write down the list of applications that are already in the Help navigation menu. We can then use the existing list and add "survey" to the end of it.

    5. Force the table of contents in the help system to reflect the change by stopping the help application, and deleting the temporary help directory on each node where help runs. For example, delete...

        /IBM/WebSphere/AppServer/profiles/AppSrv01/temp/node-name/cluster-name/Help

  9. Deploy the survey gadget on the IBM Connections home page

    1. Log in to the Administrator's home page as an administrator and select...

        Administration | Add another widget button | Open Social Gadget

    2. In the Security section, choose Trusted.

    3. In the UI integration points section, check the Show for Activity stream events check box.

    4. In the Server access via Proxy section, select All servers.

    5. Add a title and the URL address and the secure URL address. The gadget URL is...

        ${COMMON_CONTEXT_ROOT}/web/com.ibm.form.integrations.formiwidget/SurveyInStream.xml

      Where COMMON_CONTEXT_ROOT is the context root for the Connections Common application

      For example...

        http://cnxhost.myco.com/connections/resources/web/com.ibm.form.integrations.formiwidget/SurveyInStream.xml

    6. Enable the gadget by clicking the Enable button in the Disabled widgets list.

    To check the set up, look in the Enabled widgets window. Surveys Gadget is in that list.

  10. Add widget to Communities page

  11. Use surveys in Connections communities

  12. If, when saving a Survey, you get error:

    ...synchronize a single member's directory ID in the Communities member database table...

      cd /opt/IBM/WebSphere/profiles/C3ProdDMGR_profile/bin
      ./wsadmin.sh -lang jython -username wasadmin -password mypassword
      execfile("communitiesAdmin.py")
      CommunitiesMemberService.syncMemberExtIdByLogin("wasadmin")

    You may find this takes a minute to complete before you no longer see the error.


CLFWZ0026E: An unexpected error has occurred.


Parent topic:
Post-installation tasks


See also:
Integrate with Connections