Thursday 29 December 2011

Mounting an Apple OSX HFS+ drive under CentOS Linux

Back in the day, I chose to format my USB external drives using the Apple Mac OSX Hierarchical File System (HFS) format, aka HFS+ or HFSPlus.

This is sometimes a pain when I need to share files with colleagues using Microsoft Windows, but c'est la vie - it's their choice for using such an obscure OS :-)

More importantly, I was somewhat dismayed to find that the CentOS distribution that I've just started to play with does NOT include HFS+ support out-of-the-box.

This compares to Ubuntu, which ( afaik ) has had HFS+ support for some time now.

However, it was an easy problem to solve - after a quick(ish) Google search, I found this thread on the www.centos.org site, which recommends adding the elrepo.org repository to CentOS: -

$ rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org

before downloading the required RPM file: -

$ rpm -Uvh http://elrepo.org/elrepo-release-6-4.el6.elrepo.noarch.rpm

and installing the HFS+ drivers: -


$ yum install kmod-hfsplus

As ever, job done - thanks, Internet, we love you :-)

Creating a bootable USB key under Apple Mac OSX

I wanted to install a new (to me) Linux distribution - CentOS - onto my Thinkpad W500, and was looking to avoid finding and using a CD-ROM or DVD.

Having a spare USB thumb-drive kicking about, I was hoping that I could use that instead, and also "burn" the image from my Mac.

I'd already downloaded the CentOS ISO to my Mac Downloads folder, and had previously mounted it.

A quick Google search found me this MacRumours forum thread - how to "burn" an ISO to USB flash drive? - which provided a variety of answers, some positive, some not-so-positive.

Having said that, I scrolled to the very end of the thread, and found this post - Final Solution - from someone called Candlejack, which had the answer.

Basically, it's a bunch of Terminal commands :-) 

$ diskutil list

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *320.1 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:                  Apple_HFS Hard Disk               319.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.3 GB     disk1
   1:                 DOS_FAT_32 DISK_IMG                8.3 GB     disk1s1
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            CentOS-6.2-x86_6       *731.9 MB   disk2

$  diskutil unmountDisk /dev/disk1

Unmount of all volumes on disk1 was successful

$  dd if=/dev/disk2 of=/dev/disk1 bs=1m

dd: /dev/disk2: Resource busy

$  diskutil unmountDisk /dev/disk2

Unmount of all volumes on disk2 was successful

$ dd if=/dev/disk2 of=/dev/disk1 bs=1m

698+0 records in
698+0 records out
731906048 bytes transferred in 206.409147 secs (3545899 bytes/sec)

Job done.

I was then able to boot the Thinkpad from the USB drive ( via the [F12] function key ) and install CentOS, far far quicker than I could've installed from a CD or DVD.

PS For the record, I've previously blogged about CentOS, with regard to installing IBM HTTP Server on it here.

Lightweight Third Party Authentication (LTPA) FAQs

I've blogged about LTPA in the past, as it's an important part of any Single Sign-On (SSO) configuration, especially where WebSphere and/or Domino are working together.

This FAQ document contains a useful set of answers to common questions, including: -

What happens when the Security Cache, LTPA Token timeout, and session time out?
I want to force my users to re-login after a set "inactivity timeout" period. How is WebSphere Application Server supposed to work with regard to session timeouts and LTPA timeout.

etc.

Wednesday 28 December 2011

IBM Tivoli Directory Integrator - Which Version is Which ?

I've got a folder on my USB hard disk called TDI70 within which I have three files: -

-rw-r--r-- 1 hayd hayd  68001502 2010-09-22 08:32 7.0.0-TIV-TDI-FP0005.zip
-rw-r--r-- 1 hayd hayd 403947520 2010-10-04 13:50 C1IU1ML.tar
-rw-r--r-- 1 hayd hayd 405719040 2010-09-22 08:12 C1IU2ML.tar


Now I'm trying to install TDI on a 32-bit Linux distribution ( Ubuntu 11.10 ), so which of the two TAR files do I use ?

I'm sure it's obvious .....

The trick was to expand one of the two files: -

tar xvf /tmp/C1IU1ML.tar

which included: -

linux_x86/
linux_x86/install_tdiv70_linux_x86.bin
linux_x86/install_tdiv70_setup.jar



This gives me a clue :-)

Therefore, I'm going to take a bet that: -

C1IU1ML / C1IU1ML.tar == 32-bit
C1IU2ML / C1IU2ML.tar == 64-bit

Make sense ?

Printing from the iPad 2

Having been a happy iPad owner for some months now, it's always niggled that we cannot print from it to the Kodak ESP 3250 printer that's hard-wired ( via USB ) to my wife's Ubuntu laptop.

Finally, I invested some small amount of time in a Google search, and found the secret sauce.

Thanks to this blog -> Hartless By Design <- I found out how to enable the required AirPlay service, using a protocol called avahi which is installed as part of the Common Unix Printing System (CUPS) subsystem.

I've already blogged about Apple and CUPS earlier today as well as a purely Linux-related problem a few years back.

However, this particular article - AirPrint with Ubuntu 10.10 - did the job.

In essence, I needed to create a file - /etc/avahi/services/printer.service  - and add the following content: -

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
  <name>My Printer</name>
  <service>
    <type>_ipp._tcp</type>
    <subtype>_universal._sub._ipp._tcp</subtype>
    <port>631</port>
    <txt-record>txtver=1</txt-record>
    <txt-record>qtotal=1</txt-record>
    <txt-record>rp=printers/My-Printer-CUPS-Name</txt-record>
    <txt-record>ty=My Printer</txt-record>
    <txt-record>adminurl=http://198.168.1.4:631/printers/My-Printer-CUPS-Name</txt-record>
    <txt-record>note=My Printer</txt-record>
    <txt-record>priority=0</txt-record>
    <txt-record>product=virtual Printer</txt-record>
    <txt-record>printer-state=3</txt-record>
    <txt-record>printer-type=0x801046</txt-record>
    <txt-record>Transparent=T</txt-record>
    <txt-record>Binary=T</txt-record>
    <txt-record>Fax=F</txt-record>
    <txt-record>Color=T</txt-record>
    <txt-record>Duplex=T</txt-record>
    <txt-record>Staple=F</txt-record>
    <txt-record>Copies=T</txt-record>
    <txt-record>Collate=F</txt-record>
    <txt-record>Punch=F</txt-record>
    <txt-record>Bind=F</txt-record>
    <txt-record>Sort=F</txt-record>
    <txt-record>Scan=F</txt-record>
    <txt-record>pdl=application/octet-stream,application/pdf,application/postscript,image/jpeg,image/png,image/urf</txt-record>
    <txt-record>URF=W8,SRGB24,CP1,RS600</txt-record>
  </service>
</service-group>

replacing My Printer with the alias of the printer ( Kodak ), My-Printer-CUPS-Name with the "network" name of the printer as it appears in CUPS ( https://localhost:631/admin ) KODAK-ESP-3200-Series-AiO and the IP address - 198.168.1.4 - with the loopback IP address - 127.0.0.1.

Having done this, I needed to add a single line: -

ServerAlias *

to /etc/cups/cupsd.conf and then restart CUPS: -

sudo /etc/init.d/cups restart

From that point on, any print dialogue on the iPad ( I was actually trying to print an invoice from within Safari ), will show up Kodak as an AirPrint printer: -



Back in the game … if at first you don't succeed, read your own blog :-)

Every so often, I hit a problem that I know I've hit and, perhaps more importantly, overcome before.

Today was no exception, it's been bothering me for a number of months that I seem unable to print from my Macbook Pro to a Kodak printer, connected via USB to my wife's laptop ( running Ubuntu ).

I won't bore you with the gory details, but I seemed unable to automagically find the printer via the Print & Scan preferences page, and kept seeing errors such as this: -

Idle - "An unexpected error occurred. Check for problems at the printer and resubmit the job (100003)"

when printing, having manually added the printer.

To cut a long story short, I visited this very blog -> A Portal to a Portal <- and searched for CUPS and found this post -> SOLVED - Accessing CUPS printer from Mac OSX Snow Leopard

 The solution is to run the following command from a terminal session: -

cupsctl BrowseRemoteProtocols=CUPS

Prior to doing this, the cupctl command returned this: -

_debug_logging=1
_remote_admin=0
_remote_any=0
_remote_printers=1
_share_printers=0
_user_cancel_any=0
BrowseLocalProtocols=
BrowseRemoteProtocols=DefaultAuthType=Basic
JobPrivateAccess=default
JobPrivateValues=default
SubscriptionPrivateAccess=default
SubscriptionPrivateValues=default
SystemGroup=admin
SystemGroupAuthKey=system.print.admin
WebInterface=Yes

Now it returns this: -

_debug_logging=1
_remote_admin=0
_remote_any=0
_remote_printers=1
_share_printers=0
_user_cancel_any=0
BrowseLocalProtocols=
BrowseRemoteProtocols=CUPS
DefaultAuthType=Basic
JobPrivateAccess=default
JobPrivateValues=default
SubscriptionPrivateAccess=default
SubscriptionPrivateValues=default
SystemGroup=admin
SystemGroupAuthKey=system.print.admin
WebInterface=Yes
Having done this, I can now see and, perhaps more importantly, print to the Kodak.

One addition to the blog post - I'm now running OSX 10.7.2 aka Lion, whereas I was previously running Snow Leopard, and the Linux box is now running Ubuntu 11.04 Natty Narwhal.

Nice :-)

Tuesday 27 December 2011

Installing IBM HTTP Server 7 on CentOS Linux 6.2

Working with a friend to get IHS v7 working on CentOS 6.2, he ( and eventually I ) were hitting the following exception: -

(Dec 27, 2011 8:09:47 PM), Process, com.ibm.ws.install.ihs.ismp.actions.ExecWizardActionFromDirectory, err, java.io.IOException: Cannot run program "/opt/IBM/HTTPServer/bin/htpasswd" (in directory "/opt/IBM/HTTPServer"): java.io.IOException: error=2, No such file or directory
STACK_TRACE: 15
java.io.IOException: Cannot run program "/opt/IBM/HTTPServer/bin/htpasswd" (in directory "/opt/IBM/HTTPServer"): java.io.IOException: error=2, No such file or directory
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:470)
        at java.lang.Runtime.exec(Runtime.java:604)
        at com.ibm.ws.install.ihs.ismp.actions.ExecWizardActionFromDirectory.executeProcess(ExecWizardActionFromDirectory.java:202)

        at com.installshield.wizard.StandardWizardListener.currentBeanChanged(StandardWizardListener.java:106)
        at com.installshield.wizard.Wizard$RunThread.run(Wizard.java:1569)
Caused by: java.io.IOException: java.io.IOException: error=2, No such file or directory
        at java.lang.Throwable.<init>(Throwable.java:67)
        at java.lang.UNIXProcess.<init>(UNIXProcess.java:197)
        at java.lang.ProcessImpl.start(ProcessImpl.java:101)
        at java.lang.ProcessBuilder.start(ProcessBuilder.java:463)
        ... 6 more

In order to prove and, hopefully, resolve the issue, I downloaded CentOS ( CentOS-6.2-x86_64-LiveCD ) as a 700 MB ISO image. From this, I was able to quickly create a new virtual machine using VMware Fusion, and go through the IHS installation.

Given that I'm using a 64-bit version of CentOS, I also needed to install the corresponding package of IHS - for the record, IHS v7 is a 32-bit binary BUT is delivered in two packages; one 32-bit and one 64-bit.

( If you're looking for more detail, check out my other blog posts here and here )

I downloaded the x86-64 version of the product via this image: -

IBM WebSphere Application Server V7.0 Supplements (1 of 2) for Linux on x86-64 bit (IBM HTTP Server, Web Server Plug-ins and Update Installer) Multilingual (C1G00ML) - 246 MB

as detailed here: -


and unpacked the corresponding TAR file - C1G00ML.tar.gz.

$ cd /tmp
$ mkdir IHS
$ cd IHS
$ tar xvzf C1G00ML.tar.gz  

and ran the installation routine: -

$ ./IHS/install

This ran through, with me taking all the defaults, and completed BUT displayed the following message: -


When I looked at the log.txt file, I saw the exception referred to previously: -

<snip>
java.io.IOException: Cannot run program "/opt/IBM/HTTPServer/bin/htpasswd" (in directory "/opt/IBM/HTTPServer"): java.io.IOException: error=2, No such file or directory
</snip>

When I attempted to manually run the htpasswd program: -

$ /opt/IBM/HTTPServer/htpasswd

it failed with: -

bash: /opt/IBM/HTTPServer/bin/htpasswd: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

A quick Google search threw up this hit which suggested that I was missing the ld-linux.so.2 library ( which actually ties up with the above error !! ) and, more importantly, showed me the way to go home …..

Simply put, I needed to install the library as follows: -

$ yum install ld-linux.so.2

which downloaded 4.4 MB of code: -

================================================================================
 Package                   Arch        Version                Repository   Size
================================================================================
Installing:
 glibc                     i686        2.12-1.47.el6          base        4.3 M
Installing for dependencies:
 nss-softokn-freebl        i686        3.12.9-11.el6          base        116 k

Transaction Summary
================================================================================
Install       2 Package(s)


Having done that, htpasswd now runs perfectly: -

$ /opt/IBM/HTTPServer/bin/htpasswd

Usage:
htpasswd [-cmdpsD] passwordfile username
htpasswd -b[cmdpsD] passwordfile username password

htpasswd -n[mdps] username
htpasswd -nb[mdps] username password
 -c  Create a new file.
 -n  Don't update file; display results on stdout.
 -m  Force MD5 encryption of the password.
 -d  Force CRYPT encryption of the password (default).
 -p  Do not encrypt the password (plaintext).
 -s  Force SHA encryption of the password.
 -b  Use the password from the command line rather than prompting for it.
 -D  Delete the specified user.
On Windows, NetWare and TPF systems the '-m' flag is used by default.
On all other systems, the '-p' flag will probably not work.


I removed and reinstalled IHS; I still see the "Partial Success" message, but no longer see any nasty exceptions relating to htpasswd and I'm able to start/stop/use IHS without problems.

:-)

Chrome

Test post from Chrome 16.0.912.63 on the Macbook Pro ....

*UPDATE* Testing an edit, again from Chrome ...

Monday 26 December 2011

IBM i 7.1 Technical Overview

This is one for @SocialShazza and @StevenCPitcher and @DominoYesMaybe and other OS/400-flavoured chums


This IBM Redbooks publication introduces a technical overview of the main new features, functions and enhancements available in IBM i 7.1. It gives a summary and brief explanation of new capabilities and what has changed in the operating system, and also discusses many of the licensed programs and application development tools associated with IBM i.
Many of the new and enhanced functions are described such as: -

• DB2 for i support for XML and column level encryption
• PowerHA for i asynchronous Geographic Mirroring & LUN-level switching
• Virtualization enhancements for IBM i hosted partitions and PowerVM
• Storage management enhancements for solid state drives
• Systems management enhancements for Systems Director Navigator for i
• Rational software development product enhancements
• Zend PHP Enhancements
• Web Application Serving enhancements

Buy it here or read it in PDF form here.

Thursday 22 December 2011

Build Large-scale Performing Enterprise Solutions for IBM Lotus Connections 3.0.x

Whilst looking for some information for a colleague, this came into my search results.

It's a great slide deck, presented at Lotusphere 2011 by David Brooks and Morten Kristiansen, and is definitely worth a look.

Specifically, I was looking for a recommendation on the small vs. medium vs. large deployments of IBM Connections. The presentation references all three types, and says "Use Medium or Large Deployment for any non proof of concept.  Small deployment cluster puts all components on one JVM.  Unless 64 bit, will not handle user load. "

Bottom line, if you're looking to deploy IBM Connections, this is a recommended read …..




Wednesday 21 December 2011

IBM Connections - What version do I have ?

This from @SocialShazza via Twitter, following inspiration from the genius @StuartMcIntyre via Skype ( did you know that Stuart runs a great set of Skype chats about Connections, Quickr, Portal etc. ???? )

Question: What version of IBM Connections am I running ?
Answer: Query /homepage/web/jsp/about.jsp on your IBM Connections server, e.g. http://greenhouse.lotus.com/homepage/web/jsp/about.jsp

Looking at three versions of Connections to which I have access, it's a great tip: -

IBM W3 Release v3.0.1.0 build LC3.0.1_FP_20110617.1631

IBM Greenhouse Release v3.0.1.0 build LC3.0.1_FP_20110817.0216

IBM developerWorks Release 2.5 LC2.5.0.2_20100430.1448

Nice :-)


Writing it down in case I forget it … #2

There's been many many times this past year or so where I've needed to position text below a picture whilst creating a blog post in IBM Connections.

Now there's probably fifty-eleven ways of doing it better and/or in a supported way ( for the HTML and CSS purists ) but this works for me.

Simply switch into the HTML editor view, and enter the following tag: -

<div style="clear:both">

This will then push anything below ( or, I guess, within ) the DIV tag below.

I've used this to position text below images, and images below text.

Every so often I forget this, and need to ask the guru @farbrother for help ….. Perhaps now I'll remember it or, to be more honest, remember to search this blog …..

*UPDATE* Doh ! Doh ! Doh ! - last time I blogged this here  and I still forgot it :-)

Writing it down in case I forget it …. #1

Want to take a screenshot on the iPhone and, I assume, the iPad ?

Press the [Lock] and [Home] buttons at the same time … you'll hear a camera shutter click, and see a new picture added to the Camera Roll in the Photo app

For those who may not know, the [Lock] button is the one on the top right-hand edge of the iPhone, to the right of the headphone jack. Similarly, the [Home] button is the one on the bottom of the device, used to switch applications, start Siri etc.

As pictured here on the Apple iPhone S spec page

IBM Lotus Notes and Citrix XenApp Together

I've blogged on this subject many times before, including: -




Notice a trend ? The version of Notes increments each time, as does the version of Citrix XenApp.

Well, to continue the trend, Ed has just Tweeted a link to the most recent white paper: -


The timing is perfect as I'm working with a client here in the UK to look at the deployment of Notes and XenApp together.


Tuesday 20 December 2011

Download Lotus Notes and Domino 8.5.3 Upgrade Pack 1 - XPages goes mobile ….

Saw this via the Featured documents for IBM Lotus Notes, Domino, iNotes & Notes Traveler newsletter which plops into my inbox thanks to @LotusSupport 

Mobilize your social applications with Upgrade Pack 1. IBM delivers and fully supports over 100 new XPages controls and objects that help accelerate the development of mobile and web applications. Easily extend your Lotus Notes Teamroom and Discussion applications to mobile users with new XPages templates. And socialize Lotus Domino assets via common, lightweight REST interfaces.

Lots of excellent stuff in the newsletter, including the Lotusphere and IBM Connect conferences, and a Wiki Usage Survey

Do you use the IBM Lotus or IBM WebSphere Portal product wikis? If so, we want your feedback. IBM is continuing to develop improvements and release updates to the wikis. We want to hear what is important to you so that we can prioritize improvements that help you most. The data we collect from all wiki usability and feedback activities is used to influence our priorities for future design enhancements and development.

Using wsadmin and Jython to monitor WebSphere Application Server performance

This is definitely something that's relevant to my project right here, right now

This article describes how you can use wsadmin introspection with Jython to easily retrieve Performance Monitoring Infrastructure (PMI) metrics for IBM® WebSphere® Application Server. IBM Tivoli® Performance Viewer is used as a model for performance reporting. A high level review of PMI architecture is included. This content is part of the IBM WebSphere Developer Technical Journal.

Thanks to developerWorks for the tip ….

Slow performance or hang in HostName lookup due to high DNS traffic

Hmmm, this needs to go towards the top of the Very Useful pile - thanks to @IBM_AppServer for sharing via Twitter

Symptom

There are 2 symptoms you might see:


Cause

There are 2 possible causes:

Monday 19 December 2011

It’s so easy to access IBM Connections from XPages

This from Niklas Heidloff

I've implemented another feature for XSnippets to share snippets on the IBM Connections instance deployed on Greenhouse

I've used the XPages Social Enabler which comes with great functionality to handle the authentication including SSO and functionality to invoke REST services easily and parse XML. I also used the documentation of the Connections REST services. If I have time I document later more how I've done it. For now you can read the source code on OpenNTF. I want to thank my colleague Yun Zhi Lin whose code I used as starting point.

On the XSnippet page there is a new icon now to share on Connections.

Want to know more ? Then read the article ….

Friday 16 December 2011

WebSphere and Open Authorization

Saw this on Twitter today, thanks to IBM developerWorks

Using Trust Association Interceptors with WebSphere Application Server to support OAuth tokens

Summary:  Are you looking to share access of your protected resources by becoming an OAuth service provider? This article describes how you can use IBM® WebSphere® Application Server (V7.0 and later) with Trust Association Interceptors (TAI) to accept OAuth tokens for authorizing calls from applications or web sites (consumer) to protected resources. TAIs make it possible to support OAuth alongside other token services, such as LTPA, while meeting WS-Security restrictions. This content is part of the IBM WebSphere Developer Technical Journal.

Having presented on WebSphere Portal and Security at the WebSphere User Group back last year, and having delivered a project integrating WebSphere and Active Directory ( via Kerberos and SPNEGO ), this is a subject close to my heart.

My next challenge is to integrate IBM Connections with IBM Tivoli Access Manager ( aka WebSEAL ). That's a job for 2012 ….

There's a bunch of other related material on this topic, including this and this.

Web Content Authoring within a Virtual Portal

Having had a number of conversations about Virtual Portals this week, I though this post from Cody Burleson was definitely worth a read.

Though it is not necessary to have a unique WCM Authoring UI per virtual portal, there are some reasons why you might find it useful. Here are three that I can think of:

• Configuring a unique WCM Authoring UI in a virtual portal can allow you to configure specific Authoring Portlet preferences. For example: which libraries are visible to the portlet and relevant to the virtual portal.
• Previewing items from within WCM in a virtual portal context can automatically render the previews inside of the virtual portal's theme.
• Content authors may get confused by switching between the virtual portal and base portal. Directing all access beyond the virtual portal context path can simplify things.

IBM Connections and Desktop Single Sign-On using Microsoft Active Directory, Kerberos and SPNEGO

I was fortunate to be asked to present at the Social Connections  II event at the most excellent Cardiff University last week.

My chosen topic was the integration between the worlds of IBM and Microsoft, specifically my recent experiences with Active Directory, Kerberos and SPNEGO: -
  • Understand how to integrate IBM Connections with Active Directory
  • Understand how to implement desktop single sign-on with IBM Connections
  • Describe the integration possibilities with Microsoft SharePoint
I've blogged about this subject before, including this and this.

Hope this helps.

Please feel free to ping me if you need further information.

Wednesday 14 December 2011

Social Scheduling Now in IBM Connections

This from the guru, Mr Luis Benitez Esq

IBM Business Partner Intravision has created a great integration point between OnTime Group Calendar and IBM Connections. If you haven't heard or used OnTime before I suggest you check them out. They provide an awesome add on with a powerful and very slick group calendar interface.

OnTime also allows you to work with group calendars even when you are on the go by providing mobile access from your favorite mobile device.

Saturday 10 December 2011

Social Connections II - My observations

I was lucky enough to be invited to attend AND speak at Social Connections, the IBM Connections user group meeting, in Cardiff yesterday - 9 December.

This is the second time that I've attended this event, the inaugural meeting being kindly hosted by The Salvation Army back in July. This time around, Cardiff University were kind enough to host us, including the rather lovely Simon Vaughan, who is definitely a man to watch :-)

The event was well-attended, by customers, Business Partners, and IBMers, with a good 50:50 mix of business and technical.

The presentations were very social, as one might expect, and predominantly focused on the business and social benefits of IBM's collaboration solution, IBM Connections, with a few more technical sessions ( including one by Yours Truly ). The speaker list is here and the sessions listing is here.

Stuart McIntyre was the MC of the event, ably assisted by Sharon "Social Shazza" Bellamy and Lisa "Where's Darren?" Duke.

The event was live-streamed, thanks to the sterling efforts of Mark Calleran , Gaz Rose and the Salvation Army team.

Stuart has promised to upload the presentations to http://socialconnections.info/

The event was rounded off by an absolutely wonderful reception and dinner at Cardiff Castle, including a tour of three of the most gorgeous rooms in the place.

The entire day went smoothly, thanks to the hosts, the organisers and the genuine good nature of all of those attending. It was truly the perfect place to establish "Social Connections" :-)

So, with two excellent events delivered during 2011, in London and Cardiff respectively, I'm looking forward to 2012 - who knows which other UK capital cities are on the agenda, but I know that there's a bloomin' good castle in Edinburgh :-)


Ooops, nearly forgot to mention - if you want to know more about what went on during the day, check out the hashtag #soccnx on Twitter; you don't have to join the site to follow the Tweets from the audience, speakers, sponsors and web-watchers.

Help make Microsoft a Social Business … or, at least, help make Microsoft software more social ...

These from Chris Crummey





More from Chris here

Troubleshooting: Node agent monitoring WebSphere Application Servers

I saw this today on Twitter, thanks to @IBM_AppServer

Troubleshooting for problems with the node agent monitoring an IBM® WebSphere® Application Server. This should help address common issues with this component before calling IBM Support and save you time.

Worth a look next time ….

Friday 9 December 2011

A pearl of wisdom from George Bernard Shaw here at Social Connections Ii


"If you have an apple and I have an apple and we exchange these apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas."

Thanks to Louis Richardson for sharing

Thursday 8 December 2011

Searching Profiles programmatically

Mikkel Heisterberg Tweeted about this earlier, and it's a subject close to my heart, having done a lot of work with IBM Connections Profiles in the past few months, mainly via IBM Tivoli Directory Integrator and the ProfilesService.UpdateUser() command.


As part of IBM Connections you will find a big REST API that allows you to work with almost every part of Connections such as searching for profiles, managing files and working with communities. As part of our new product (see my previous post) I'm doing a lot with this API. Right now one of my favorite wiki documents is "Searching Profiles programmatically".

Demo of the IBM Content Templates Catalog

Cody Burleson posted this on Twitter earlier today, and I thought it was definitely worth a look - especially as I'd been talking about the Content Templates Catalog ( aka CTC ) to a colleague earlier this week.

Demo of the IBM Content Templates Catalog: youtube.com/IBMXWebX

Using Trust Association Interceptors with WebSphere Application Server to support OAuth tokens

I saw this on Twitter this morning, thanks to the @LotusEducation account which is ably run by Sonia Malik and Lorraine Ludwicki.

Summary:  Are you looking to share access of your protected resources by becoming an OAuth service provider? This article describes how you can use IBM® WebSphere® Application Server (V7.0 and later) with Trust Association Interceptors (TAI) to accept OAuth tokens for authorizing calls from applications or web sites (consumer) to protected resources. TAIs make it possible to support OAuth alongside other token services, such as LTPA, while meeting WS-Security restrictions. This content is part of the IBM WebSphere Developer Technical Journal.

Intoduction: OAuth (Open Authorization) is an open protocol that permits secure API authorization from desktop and web applications (consumers) by enabling the consumer to act on behalf of a user without requiring the user to provide sensitive account information, such as username and password.

An example of a consumer might be a company that wants to aggregate all of its customers' photos onto a single web page. Rather than asking every user to enter the username/password for each of their photo sharing accounts, the company can act as a consumer and each of the photo sharing web sites can act as service providers and exchange OAuth tokens. This gives the photo aggregator company access to a user's photos without the user potentially compromising the security of their account by giving out username/password information.

Wednesday 7 December 2011

WebSphere Portal and IBM Web Content Manager - Search

Having blogged about Portal search in the past, and having had recent  discussions IBM Web Content Manager and Google Search Appliance integration with a colleague earlier, I found and shared these two links


Table of Contents
• 1 Search engine optimization
• 1.1 Overview of Search Engine Optimization
• 1.2 Definition of terms
• 1.3 How search engines work
• 1.4 More on Google
• 1.4.1 Google optimization basics
• 1.4.2 Other factors that will affect your ranking
• 1.4.3 Sitemaps
• 1.5 How Internet search engines work
• 1.6 Challenges with portal crawlability
• 1.7 Portal crawler awareness and normalized URLs
• 1.8 Sitemap portlet
• 1.9 External crawlability of Portal with WCM content
• 1.10 Web 2 0 and search
• 1.11 Case study using the sitemap portlet
• 1.11.1 Adding sitemap portlet to a page outside of the default navigation
• 1.11.2 Adding sitemap portlet to the theme
• 1.11.3 Configuring robots directives
• 1.11.4 Reconfiguring nrmalized URLs to include request parameters
• 2 Searching and crawling portal and other sites with portal search
• 2.1 Understanding portal search
• 2.2 Portal search architecture
• 2.3 Search services collections and scopes
• 2.4 Search and administration user interfaces
• 2.4.1 Search center
• 2.4.2 Search and browse
• 2.4.3 Suggested links
• 2.4.4 External links
• 2.4.5 Manage search
• 2.4.6 Portal Search Toolbox
• 2.4.7 WCM search component
• 2.5 Portal search APIs
• 2.6 Seedlist framework
• 2.7 Crawlability of portal with WCM content
• 2.8 Categorization and taxonomy
• 2.9 Case study crawling the portal and displaying search results
• 2.9.1 Suggested links
• 2.9.2 External search results


1 Basics of search engine functionality
2 Search services
3 Best practices
4 Conclusion
5 Resources
6 About the author

This is also worth a look

Monday 5 December 2011

Resolution – 404 errors accessing WCM content through the POC Servlet (/wps/mypoc/…)

Am reposting this from Cody Burleson as it has a strong linkage to a project on which I was engaged earlier this year - in my case, we were using the Google Search Appliance to index WCM, in Cody's case, they were using IBM Omnifind.

Recently, we had a problem where WCM URLs in OmniFind search results (generated by the Portal seedlist mechanism) were giving 404 errors when clicked. These are URLs that contain /wps/mypoc in the URL. This page documents a solution that worked for us.

However, it's definitely worth a read ….

*UPDATE 03/01/2013 - Since I wrote this article in late 2011, Cody has removed the post from his blog. However, I've found what may be a new solution, and have blogged about it here: -

More on 404 errors accessing WCM content through the POC Servlet (/wps/mypoc/…) 

A surfeit of VMware and Linux goodies … including running VMware ESXi from a USB Key :-)

Whilst lurking around the blogroll on this very site, I noticed an interesting post from Graham Bucknell in IBM Australia. The title Unable to install VMware Tools – no such file or directory caught my eye, the content even more so, especially when he goes on to talk about: -

Now I use the very cool repo/unmanaged solution for the majority of our guests, since they run RHEL 6. If you don't know about this check it out here. If you use RHEL kickstart, it is trivial to make new guests come out with tools installed and the tools repo enabled. Anyway, enough gushing, just check it out if you use RHEL on VMware.

and: -

I should note before getting into this, that I am running ESXi from a USB key.

both of which look (a) sweet and (b) interesting.

I shall now go and read a bit more …..

Michael Sampson - Collaboration Roadmap: You've Got the Technology — Now What?

Having thoroughly enjoyed Michael's earlier book: -


User Adoption Strategies: Shifting Second Wave People to New Collaboration Technology when it came out last year ( thanks to ThisWeekInLotus from whom I received it as a prize !! ), I'm going to be putting in an order for Michael's latest book: -



Many firms are struggling with collaboration technology. Either it's been installed and is not being used, or they are not sure what to do. How do you make great decisions about collaboration technology and its use within organizations?

Collaboration Roadmap answers both questions.

- Introduction and Overview
- Foreword - by Ed Brill (IBM Corporation)
- Chapter 1. Setting the Scene
- Chapter 2. Really Understand the Technology
- Chapter 3. Outline the Vision
- Chapter 4. Accept Technology is a Small Factor in Success
- Chapter 5. Determine Your Governance Approach
- Chapter 6. Make Every Effort to Engage the Business
- Chapter 7. Apply Intentional Energy to Adoption
- Chapter 8. Pursue Increasing Value
- Chapter 9. Your Collaboration Journey
- Appendix 1. Collaboration Theory

Collaboration Roadmap packs 15 years of experience into 320 pages.

If you or your organisation are looking at collaboration technology, or considering its implementation, it's definitely worth a look.

PS Just to remind you, "...The postings on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. My blog is PERSONAL…."

Using packet trace tools iptrace, snoop, tcpdump, wireshark, and nettl

Saw this Technote float by my Twitter river of news this morning, kindly tweeted by the IBM_AppServer account

It was ostensibly writing for WebSphere Edge Server, but is going to be relevant to many other use cases as well.

In essence, it provides a very brief description of the monitoring tools available on various flavours of Unix … oh, and Windows as well.

Well worth bookmarking, it may just save your life project.

It also allows you to feel like a character from the Matrix film, although don't start using nmap at work, kids, unless you know precisely what you're doing :-)


Visual Studio Code - Wow 🙀

Why did I not know that I can merely hit [cmd] [p]  to bring up a search box allowing me to search my project e.g. a repo cloned from GitHub...