Working with IBM Connections Communities under a different URL

During side-by-side migrations or for backup/restore projects it sometimes is necessary
to access your Connections data under a different URL than the original one.

For side-by-side migration projects you may want to run a test migration and let
a subset of test users reach the new environment at a temporary URL. This way you don’t have explain anything about changing hosts files etc and testing access for mobile devices gives you no other challenges than using an alternative Connections URL.

Also testing purposes may demand you to have a set of data that resembles the production system. A thing that will help in troubleshooting data related production issues and gives you a try how to deal with a Connections data backup/restore routine.

The challenge with these projects is that there are components inside Connections which hold absolute URLs inside their configuration. The Community widget configuration is one of them. But you will also see this for Blog items which have images in them which are saved inside the Blogs component.

Also some issues could arise with embedded images inside Wiki pages. ( Okay so the Wikis embedded images thing is related to Connections 5.5. The following tech note was already released to address this issue. “Following migration to IBM Connections 5.5, images within wiki pages have disappeared and replaced with a small box.” )

As you notice it all is a bit trial and error which is mainly because no good
all-one backup / restore procedure exists yet. A lot of progress has been made to introduce trash cans in order to be able to restore deleted Files, Activities etc.
But doing a complete restore to a different environment, for example, get a presentably production like environment is a real challenge.

For now this Blog entry lists a way to fix the widget configurations of Communities so at least all functions within a Community are available and usable.

On creating, Communities don’t have absolute URLs in those widget configurations if
you stay to using “stock” Connections widgets. Add-on widgets like the Library and the “Featured Survey” widget always include an absolute URL inside their configuration.

The “Featured Survey” widget with a wrong URL configuration caused some Communities to get stuck in an infinite reloading loop.

Some other thing I saw going bork when accessing the Connections environment under a different URL was the Files widget. Saving settings for the Files widget will have the effect that absolute URLs  are included.

Below the error you will see when the the Files widget configuration uses absolute URLs.Files-widget-error

All Communities have a widget configuration saved as XML inside a BLOB column in the SNCOMM.LC_EXTENSIONS table. The name of the column is EXT_VALUE_EXTENDED.

widget-config-featuredsurvey widget-config-library

 

 

 

 

 

Once you access the Connections environment at the correct URL the thing to fix is to replace all old URLs with the new one within all XML configurations. A good database tool which you can use to open/edit and save BLOB fields is DbVisualizer. Running it in evaluation mode will give a way to edit BLOB fields. If you have a lot of these wrong widget configurations you be better off coding something with Java or SQL else you will be clicking yourselves senseless.

mustang-edit-blob

IBM Connections Plug-in for IBM Notes & Connections Cloud

Support for the Connections Cloud in the IBM Connections Plug-in for IBM Notes  seems on its way.

NotesPluginSmartCloud

 

 

 

 

 

https://greenhouse.lotus.com/blogs/We047f6e69323_42ff_8db6_8bd4fe32a841/entry/Make_the_Files_sidebar_widget_to_work_with_SmartCloud?lang=en_us

Re the “The Files sidebar plugin does not support IBM Connections Cloud” technote.

 

 

Profiles not marked as inactive with two TDI configurations

When you work with two TDI configurations, which is a very common scenario
in a setup where you also have external users, it could occur that profiles
aren’t marked as inactive anymore. Even if the account of the user
is deleted from the LDAP directory.

This could be caused by the facts that:

1. you work with two TDI configurations which requires a specific setup for
both TDI configs. This prevents that the one TDI sync process marks all the
profiles provided by the other TDI solution as inactive and visa versa.

These are the settings for profiles-tdi.properties
sync_store_source_url=true
sync_source_url_enforce=true
sync_source_url_override=true

2, in the situation that the LDAP filter or the LDAP host is changed
after the user profiles where populated.

 

In order to prevent this you should come up with a LDAP filter to rule theme all
and stick to it or update the PROF_SOURCE_URL column for all profiles to
keep it “synced” with the current LDAP host and LDAP filter in use by the TDI
configs.

The PROF_SOURCE_URL is built as follows from the following
profiles-tdi.properties values.

source_ldap_url + ‘/’ + source_ldap_search_base + ‘?’ source_ldap_search_filter

lead21-long-term-2011-vw-jetta-tdi

 

 

 

 

 

 

To make difference between the Profiles that are internal and external you can
use the PROF_MODE column. If it is set to 1 it indicates an external user profile
and 0 is for an internal user profile.

update EMPINST.EMPLOYEE
set PROF_SOURCE_URL='ldap://lcalhost:389/dc=base,dc=com?(objectClass=person)'
WHERE PROF_MODE=0;

Credits for this fix go to my colleague Remco.

 

 

 

DB2 backup/restore for IC5.5 – diff. diff. diff. diff.

A different instance owner, a different instance name, different db2levels and different paths. This is a setup you could bump into when you want to migrate your DB2 databases for your IBM Connections 4.5 or 5.0 environment to version five dot five.

When going with the side-by-side migration path you can use the DBT tool as provided by IBM but you can also accomplish this by using DB2 backup restore mechanism as long as your operating system remains the same.

Backup and restore operations between different operating systems and hardware platforms

This is one of the setups I had to work with.

Source DB2 system
– Windows 2008 R2 64bit
– DB2 10.1 FP2 64-bit
– Tablespaces located on D:
– Instance owner: DB2ADMIN
– Instance name: DB2

Target DB2 system
– Windows 2012 64-bit
– DB2 10.5 FP7 64-bit
– Tablespaces located on Z:
– Instance owner: DB2IIC
– Instance name: DB2IIC

First create offline backups on the source DB2 system. ( You can’t use online backups
to restore to a higher DB2 version on the target system. ) Restoring to a higher DB2 version will automatically upgrade the database to the new version.

Get the offline backups to the target DB2 system.

Logged in as the new instance owner on the DB2 target system make sure to set the following DB2 variable so the DBADM role is giving to the user that is performing the restore.

C:\>db2set DB2_RESTORE_GRANT_ADMIN_AUTHORITIES=ON

Make sure to stop and start the DB2 instance.

db2stop
db2start

See the following technote about this command. “Grant the new instance owner rights on all new restored databases”. -> http://www-01.ibm.com/support/docview.wss?uid=swg21568865

Navigate to the path where you placed the backups from the source system.
As an example we use the Activities OPNACT database. Use the following command
to start the restore of the OPNACT database. By using the “redirect generate script” parameter you get the option to change the paths where to redirect to.

db2 "restore db OPNACT from . ON "z:" into OPNACT redirect generate script dbrestore_OPNACT.txt"

After running this commando open the dbrestore_OPNACT.txt file. For the OPNACT
database I had to make the following changes. It depends per Connections database as some have more tablespace containers than the others.

Enable ( remove the leading — ) and change the used path values.
Find here the original and the modified one. The new paths to choose are up to yourself ( as far as I can tell ).

NEWLOGPATH ‘Z:\DB2IIC\NODE0000\OPNACT\’
REPLACE EXISTING

SET STOGROUP PATHS FOR IBMSTOGROUP
ON ‘Z:’

PATH   ‘Z:\DB2IIC\NODE0000\SQL00001\OATMPTABSPACE’

FILE   ‘Z:\DB2IIC\NODE0000\SQL00001\OAREGTABSPACE’              4480

 

If the database already exist on the target system and you want restore into that database/replace make sure the NEWLOGPATH directory is empty else first
remove all log files inside that directory.

del /s /q /F Z:\DB2IIC\NODE0000\OPNACT\NODE0000\*.*

Now run the modified SQL statement to complete the restore.

db2 -tvf dbrestore_OPNACT.txt

Check if you can connect to the restored database.

Capture

 

 

If you have restored all the databases use the 5.5 day1 upgrade scripts to upgrade
to the IBM Connections 5.5 level.

CCM thumbnails not generated – ThumbnailServ E Exception:Unauthorized

When thumbnails for CCM files aren’t generated and the message below is logged in the SystemOut.log it probably means that the J2C authentication alias for docsAdmin doesn’t match the user mapped to the docsAdmin role of the IBMConversion app.

ThumbnailServ E   Exception:Unauthorized

For the FileViewer implementation goes ( IBMDocs 1.0.7 iFix3 ) that the J2C authentication aliases are widely used across the IBMDocs json config. files.

.\AppSrv01\config\cells\ACMECell01\IBMDocs-config\viewer-config.json
Near line 55
“j2cAlias”:”docsAdmin”,
And around line 366
“j2c_alias”: {
“ecm”: “filenetAdmin”
},

.\AppSrv01\config\cells\ACMECell01\IBMDocs-config\viewer-daemon-config.json
Line 4
“j2c_alias”: “docsAdmin”,

.\AppSrv01\config\cells\ACMECell01\IBMDocs-config\conversion-config.json
Around line 15
“j2c_alias” : “docsAdmin”,
“viewer_j2c_alias” : “viewerAdmin”,

Check her for the latest iFixes for IBMDocs 1.0.7. -> http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=Collaboration%2BSolutions&product=ibm/Lotus/IBM+Docs&release=1.0.7&platform=Windows&function=all

Wasn’t even aware yet but it seems they recently also released iFix 5.

DocsFix

 

 

 

 

 

 

 

Required fonts for IBM Docs/File Viewer 1.0.7

To meet the requirements for the sanity check of the Conversion server component of IBM Docs 1.0.7. you need to collect seven fonts and install them on each of the nodes on which you run the conversion service.

Installing means just copy and paste them under c:\windows\fonts.

This package includes all the seven fonts -> IBMDocs107fonts ( Around 10 MB in size ).

Also see this forum topic -> http://www-10.lotus.com/ldd/lcforum.nsf/d6091795dfaa5b1185256a7a0048a2d0/c9098ccd71178e0a85257e05005a2900?OpenDocument

http://connections5.acme.org/sanity/check?app=conversion&querytype=report

IBMFileViewerConversionSanityCheck

 

Connections Search index not updated anymore

When the search index of Connections isn’t updated anymore and you see no activity
in the logs of the index being ran it could be that the Search scheduled tasks are stuck in the past. You can use these steps without restarting any of the IBM Connections components.

In this example the Search tasks next start dates weren’t update anymore since November the 9th.
WrongSearchIndexStartOnDate

 

With the following wsadmin command from the searchAdmin.py library you can delete all scheduled tasks that are bound to the search application. Note, I didn’t have any customized search schedules, all were the default.

wsadmin>SearchService.deleteAllTasks()
1

Refresh the list.

wsadmin>SearchService.refreshTasks()

Show the list again and you will notice all the scheduled Search tasks are gone.

wsadmin>Scheduler.listAllTasks()

ScheduledTasksSearchEmpty

Now reset everything to default.
wsadmin>SearchService.resetAllTasks()
1
Refresh the list again
wsadmin>SearchService.refreshTasks()

Now showing the list again and you will see that the Search tasks have a next start
date that is in the future.

wsadmin>Scheduler.listAllTasks()

ScheduledTasksSearchRefreshCorrectStartDate