Thursday, 10 December 2009
Shelling out on Ubuntu 9.10 ( Karmic Koala )
Having not really had a chance to do much with Ubuntu recently ( mainly since I crossed over to the Cupertino side with the absolutely awesome Apple Macbook Pro and OSX ), I've got back into the game recently, as I build a play/dev. box on my trusty old 2007-AE7 Thinkpad T60p.
I installed Ubuntu 9.10 Karmic Koala on the beast the other week, and have most recently installed: -
Lotus Mobile Connect 6.1.3.0-1.3
DB2 UDB 9.1.0.5
Lotus Domino 8.5.1
Tivoli Directory Integrator 6.1.1 FP7
( appreciating that all/most of the above are completely UNSUPPORTED by IBM on Ubuntu )
The reason for this is that I'm trying to crack a problem with TDI whereby I want to bring users who are members of a Domino group into Lotus Connections 2.5 via TDI. This doesn't work out of the box, mainly due to the way that Domino groups work when exposed via LDAP.
Therefore, I needed to create a custom TDI Assembly Line, which I've now done. My AL populates a file called collect.dns.
Once the AL has done the job of pulling the users from the group, I then need it to populate those same users into Connections, via the underlying Profiles database.
Rather than reinventing the wheel, I need my AL to call one of the Connections Wizard's underlying scripts - populate_from_dn_file.sh - which takes the contents of the aforementioned collect.dns file and posts it into the Profiles DB.
In order to have my AL call the existing script, I needed to use the Command Line Collector.
However, when I tried to validate that the populate_from_dn_file.sh script worked ( outside TDI ), I got the following error: -
./tdienv.sh: 4: [[: not found
./tdienv.sh: 7: [[: not found
./tdienv.sh: 10: [[: not found
./populate_from_dn_file.sh: 10: [[: not found
./populate_from_dn_file.sh: 14: [[: not found
./populate_from_dn_file.sh: 18: [[: not found
After a quick Google, I discovered that the problem is that the TDI scripts use the SH shell which, for some weird reason on Ubuntu, is actually linked to the /bin/dash shell.
Obvious, heh ? NOT !
The solution ?
sudo mv /bin/sh /bin/sh.bak
sudo ln -s /bin/bash /bin/sh
In essence, we backup the old version of /bin/sh and replace it with a version that links to /bin/bash.
Nice one !
I'll post more on the TDI hacking once I've got it working properly, and tested :-)
Thursday, 3 December 2009
WebSphere Portlet Factory 6.1.5 - My First Failure .... and success
Having
recently installed WebSphere Portal Express 6.1.5, I went one step further on Wednesday and installed WebSphere Portlet Factory Designer 6.1.5 onto the same Red Hat Enterprise Linux VMware image.
Hmmmmm, things did not go quite as smoothly as I'd expected.
I downloaded/installed in this order: -
c) WebSphere Portlet Factory Designer 6.1.5 - CZ7RYML.zip
In case it's relevant, I "merely" installed Eclipse by expanding the TAR file into /opt/eclipse.
So far so good.
Whilst creating a WPF project, I'm prompted to create a new Server Configuration for the deployment of the project to WebSphere Application Server / WebSphere Portal.
Since 6.1 was released, WPFD can connect to WAS via SOAP as well as the more traditional HTTP method. I think I'm right in saying that this allows for remote deployment of WARs ( where WPFD is on one machine and WAS/WP is on another ) so it's a good feature to have.
Having taken the defaults for the WAS/WP 6.1 configuration: -

I clicked the "Test Connection" button ..... and saw .....
Check your Host and SOAP Connector port inputs. To verify your SOAP Connector port, go to the WebSphere Admin Console, select Application Servers > YOUR_SERVER > Ports and use the SOAP_CONNECTOR_ADDRESS
I followed the advice in the dialogue box and checked that the WebSphere_Portal instance of WAS was running, and the SOAP_CONNECTOR_ADDRESS was indeed 10033. I even proved it using the WSAdmin script as follows: -
/opt/IBM/WebSphere/PortalExpress/AppServer/bin/wsadmin.sh -port 10033 -user wpsadmin -password passw0rd -lang jython
By this time I was getting very desperate, and was using netstat -aon | grep 10033 to prove that the port was available, and even checked that the firewall - IPTables - was NOT running.
I then tried starting WPF in debug mode ( by running /opt/eclipse/eclipse -debug ) and then saw the following exceptions when I clicked the "Test Connection" button: -
INFO: ssl.disable.url.hostname.verification.CWPKI0027I com.ibm.websphere.management.exception.ConnectorException: ADMC0053E: The system cannot create a SOAP connector to connect to host localhost at port 10033 with SOAP connector security enabled.
Caused by: [SOAPException: faultCode=SOAP-ENV:Client; msg=Error opening socket: java.net.SocketException: java.lang.ClassNotFoundException: com.ibm.websphere.ssl.protocol.SSLSocketFactory; targetException=java.lang.IllegalArgumentException: Error opening socket: java.net.SocketException: java.lang.ClassNotFoundException: com.ibm.websphere.ssl.protocol.SSLSocketFactory]
com.bowstreet.designer.deploy.DeploymentException: An error occured trying to create the admin client. Check your Server Configuration inputs, and make sure your server is running.
At this point, I decided to call in the heavy mob - thanks to two of the smart people in the US, Jonathan B and Kevin T, I was able to crack it.
The ClassNotFound exception against com.ibm.websphere.ssl.protocol.SSLSocketFactory helped indicate the problem - Kevin advised me to check that the class did exist in the right place: -
/opt/IBM/WebSphere/PortletFactory/Designer/eclipse/plugins/com.bowstreet.designer.JMXConnection_6.1.5/WAS6.1/com.ibm.ws.security.crypto_6.1.0.jar
and then suggested that the problem MIGHT be a JRE issue; apparently the com.ibm.websphere.ssl.protocol.SSLSocketFactory class has a dependancy on the IBM Java Runtime Environment.
I proved this by changing my environment to use the IBM JRE that's packaged with WebSphere Application Server instead of the Sun JRE, by use of the setupCmdLine.sh, as follows: -
Before changing the environment
$ java -version
java -version
java version "1.6.0_17"
Java(TM) SE Runtime Environment (build 1.6.0_17-b04)
Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing)
Change the environment
. /opt/IBM/WebSphere/PortalExpress/AppServer/profiles/wp_profile/bin/setupCmdLine.sh
( noting the leading DOT SPACE )
After changing the environment
$ java -version
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pxi32devifx-20090811 (SR10 +IZ56666+IZ56751))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20090707 (JIT enabled)
J9VM - 20090706_38445_lHdSMr
JIT - 20090623_1334_r8
GC - 200906_09)
JCL - 20090811
Having done this, I was able to restart Designer, and deploy my project using SOAP.
In short, if you see similar exceptions re SSLSocketFactory, check that you're not running the Sun JRE.
Tuesday, 1 December 2009
Oooh, shiny, WebSphere Portal and WebSphere Process Server together ...
as per this developerWorks
article: -
"...The guide contains the steps for building a two-node portal cluster running on WebSphere Application Server 6.1.0.15 and integrating this environment with WebSphere Process Server 6.1.0.1 in the same WAS cell, including the transfer of Portal's Derby database to an external database server..."
This is something I really need to read ( I feel the need, the need to read or, perhaps, the need to speed read ).
Monday, 30 November 2009
Installing WebSphere Portal Express 6.1.5 on Linux
Following on from my
earlier post, I've now documented my first installation of WebSphere Portal Express 6.1.5 here: -
Installing%20WebSphere%20Portal%20Express%206.1.5%20on%20Linux.pdfEnjoy !
Creating an IBM Lotus Web Content Management site structure with one click
An interesting article over on developerWorks: -
If you work with IBM Lotus Web Content Management, one of your recurring tasks is defining site structure. This task by its nature is time-consuming and repetitive; you are required to take more than 10 distinct steps to create a single site or site area. Moreover, site structures are not portable by design; you cannot export your site structure from one library on one server to a different library on a different server. Instead, you need to recreate the entire site structure manually.
Because the number of sites and site areas that make up a single site structure can reach the thousands, you need a method to automate the process of defining the site structure and to make it easier to move, export, and import. In this article, you can learn a simple way to define your site structure as an XML file and deploy it accordingly.
Friday, 27 November 2009
Installing WebSphere Portal 6.1.5 on Linux ....
Having had a bit of a download fest in the office yesterday, I thought I'd start to document my first 6.1.5 installation.
I downloaded two deployments of WebSphere Portal: -
WebSphere Portal Express
- includes Lotus Web Content Management
- installs on/with/using DB2 UDB Express
WebSphere Portal Server
- just the portal framework with no WCM
- installs on/with/using Apache Derby ( aka Cloudscape )
For WebSphere Portal Express, I searched for, and downloaded elements of, the package known as: -
IBM WebSphere Portal Express for Linux x86, V6.1.5 Multilingual eAssembly (CR9UKML)
IL-Setup IBM WebSphere Portal Express V6.1.5 - IBM WebSphere Portal Express Install V6.1.5 (W-Setup, I-Setup, IL-Setup) Multiplatform Multilingual (CZ8G8ML)
IL-1 WebSphere Portal Express V6.1 - DB2 UDB Express Edition for Linux on x86, 32-bit (IL-2) Multilingual (C1HA2ML)
IL-2 IBM WebSphere Portal V6.1.5, WebSphere Portal Express V6.1.5 and Lotus Web Content Management V6.1.5 - WebSphere Application Server Network Deployment for Linux on x86-32, V6.1.0.27 (IL-1) Multilingual (CZ8H5ML)
IL-3 IBM WebSphere Portal Express V6.1.5 - Portal Server Express component V6.1.5 (Disk 1 of 3)(W-3, I-3, IL-3) Multiplatform Multilingual (CZ8I8ML)
IL-4 IBM WebSphere Portal Express V6.1.5 - Portal Server Express component V6.1.5 (Disk 2 of 3)(W-4, I-4, IL-4) Multiplatform Multilingual (CZ8I9ML)
IL-5 IBM WebSphere Portal Express V6.1.5 - Portal Server Express component V6.1.5 (Disk 3 of 3)(W-5, I-5, IL-5) Multiplatform Multilingual (CZ8IAML)
and unpacked them using the following shell script ( unpack.sh ): -
unzip CZ8G8ML.zip -d IL-Setup
mkdir IL-1
tar xvzf CZ8H5ML.tgz -C IL-1
unzip C1HA2ML.zip -d IL-2
unzip CZ8I8ML.zip -d IL-3
unzip CZ8I9ML.zip -d IL-4
unzip CZ8IAML.zip -d IL-5
into my /tmp directory.
It's worth noting that WebSphere Portal Express ONLY comes in a 32-bit deployment on Intel, unlike WebSphere Portal Server ( see below ).
For WebSphere Portal Server, I searched for, and downloaded elements of the package known as: -
IBM Collaboration Accelerator and WebSphere Portal Server for Linux on x86, V6.1.5 Multilingual eAssembly (CR9QVML)
IL-Setup IBM WebSphere Portal Server V6.1.5 - IBM WebSphere Portal Server Install V6.1.5 (W-Setup, A-Setup, H-Setup, HI-Setup, I-Setup, IL-Setup, PL-Setup, ZL-Setup, SS-Setup, SO-Setup) Multiplatform Multilingual (CZ8G7ML)
IL-1 IBM WebSphere Portal V6.1.5, WebSphere Portal Express V6.1.5 and Lotus Web Content Management V6.1.5 - WebSphere Application Server Network Deployment for Linux on x86-32, V6.1.0.27 (IL-1) Multilingual (CZ8H5ML)
IL-2 IBM WebSphere Portal V6.1.5 and Lotus Web Content Management V6.1.5 - IBM WebSphere Application Server Network Deployment for Linux on Intel (64-bit), V6.1.0.27 (IL-2) Multilingual (CZ8HDML)
IL-3 IBM WebSphere Portal Server V6.1.5 - IBM WebSphere Portal Server Server component (Disk 1 of 4) V6.1.5 (W-3, A-3, H-3, HI-3, I-3, IL-3, PL-3, ZL-3, SS-3, SO-3) Multiplatform Multilingual (CZ8I4ML)
IL-4 IBM WebSphere Portal Server V6.1.5 - IBM WebSphere Portal Server Server component (Disk 2 of 4) V6.1.5 (W-4, A-4, H-4, HI-4, I-4, IL-4, PL-4, ZL-4, SS-4, SO-4) Multiplatform Multilingual (CZ8I5ML)
IL-5 IBM WebSphere Portal Server V6.1.5 - IBM WebSphere Portal Server Server component (Disk 3 of 4) V6.1.5 (W-5, A-5, H-5, HI-5, I-5, IL-5, PL-5, ZL-5, SS-5, SO-5) Multiplatform Multilingual (CZ8I6ML)
IL-5A IBM WebSphere Portal Server V6.1.5 - IBM WebSphere Portal Server Server component (Disk 4 of 4) V6.1.5 (W-5A, A-5A, H-5A, HI-5A, I-5A, IL-5A, PL-5A, ZL-5A, SS-5A, SO-5A) Multiplatform Multilingual (CZ8I7ML)
and unpacked them using the following shell script ( unpack.sh ): -
unzip CZ8G7ML.zip -d IL-Setup
mkdir IL-1
tar xvzf CZ8H5ML.tgz -C IL-1
unzip CZ8HDML.zi p -d IL-2
unzip CZ8I4ML.zip -d IL-3
unzip CZ8I5ML.zip -d IL-4
unzip CZ8I6ML.zip -d IL-5
unzip CZ8I7ML.zip -d IL-5A
Right, time to start the first installation, and then make breakfast ...
Thursday, 26 November 2009
Jon Mell - first it was the WebSphere Portal 4 deployment guide, now it's Lotus Connections 2.5 ...
As per Jon's blog
here, he's looking for input into his upcoming Lotus Connections 2.5 installation guide. Rather than hearing it from me, here's Jon in his own words: -
...
Plan to (belatedly) update my Connections 2.5 install guide soon (before New Year). Was thinking that for single server install the 2.0 guide works pretty well for 2.5 so thinking of something different ... Linux? Clustering? Different LDAP?
...
Answers ( on a blog posting ) to Jon ....

Subscribe to Posts [Atom]