WebSphere Portal Express Install Tips

As a part of a Notes/Domino 6.5 entitlement program, users of ND6 who also had a maintenance license got 20 free Websphere Portal Express licenses. This was a good way to encourage Notes developers and administrators to start getting familiar with the Portal product, but unfortunately the install of Portal Express was not very straightforward. Not for me anyway. Maybe it worked like a charm for everyone else, but I had lots of problems.

As a result, these are my notes from the WebSphere Portal Express install that I did on Linux, up to the point that I was successfully able to start getting through the install process. I hope this helps someone else who had as much trouble as I did.

I did the install on a Linux box, so I'm not sure how much of this corresponds to a Windows-based install. From all the forum posts that I read, I have a feeling you'll have similar issues on Windows. Or it'll work perfectly and you'll think I'm a moron (that's always a possibility too).

Step 1 - Download Required Files
First you'll need to download a couple of Java packages (you'll see why later):

Then you'll have to navigate through the Lotus Passport site (if you don't have a Passport login, I'm not sure that you'll have access to any of this). The Passport site is notoriously difficult to navigate through, so you're going to have to poke around to really find everything.

Try searching for WebSphere products in your language of choice, and find the link called "WebSphere Portal - Express V5.0 - e-Assembly". From this page (which has a lot of different packages), you'll need the following downloads:

Step 2 - Copy and Extract the Files to the Linux Machine
Copy all of the files you've just downloaded to your Linux machine, in their compressed form (it's very important not to try to extract the files on a Windows machine first, because the names and the file permissions can get screwed up if you extract on a Windows machine). The easiest way to do this is usually just to burn them to a CD.

Extract all of the files/directories somewhere on your Linux box, making sure to use a separate folder for each set of files (e.g. -- don't extract everything to the same base folder). For the Java files, I used /usr/lib/j2se, because that's where my Java 1.4 was already installed. Then I just used a temp directory for the WebSphere files.

Step 3 - Make Sure Java Works
It's important to make sure that the IBM Java packages work on your machine. To do this on a very basic level, open a terminal window, navigate to the /jre/bin directory of each of the extracted JRE packages, and issue the command:

./java -version

If it comes back with a proper version of Java, you're okay. Some of the old versions of the IBM 1.3.1 JRE will give a Segmentation Fault (also known as a segfault, or SIGSEGV, for anyone searching for this information via Google) on certain versions of Linux -- make sure you've got the latest one from the IBM website (version SR6 worked for me). I've heard that issuing "export LD_ASSUME_KERNEL=2.2.5" or "ulimit -s 2048" in a Bash shell before running "./java -version" will sometimes help, although that may just be for the Sun versions of Java.

You should also make sure that all of the JDK files that are in the WebSphere install folders themselves work properly on your machine. To do this, just search for all the "jre" folders within the temporary directory structure that you extracted the Portal install files to, and issue a "./java -version" command inside each of them. If you get a segfault on any of those, you're probably screwed and should quit right now, but if you're just bound and determined to get this product installed, you can try renaming the JRE folders and copying the downloaded IBM 1.3.1 JRE folder (from Step 2 above) to that same location. This will give you a very unsupported configuration if you're successful, but it might actually work. You'll have to make that call.

Step 4 - Start the Install
This last part sounds deceptively simple. Just open a terminal window and navigate to the directory where you extracted the "3 of 14" files, and issue the command:

./dist/linwpinstall -i:log ./log.txt

If install continues successfully, just keep going...you're lucky and you're done. However, you will probably get some console output like this:

InstallShield Wizard

Initializing InstallShield Wizard...

Searching for Java(tm) Virtual Machine...

Preparing Java(tm) Virtual Machine...
(about 10 more lines worth of dots)

and then you just get a shell prompt again. If you open the log.txt file that got created, you'll see a bunch of lines like:

Checking path hint /opt/IBMJava2-13/
Verifying JVM at /opt/IBMJava2-13/jre/bin/java
  for JVM: IBM Java Runtime Environment (JRE) 1.3 for Linux

Take note of the JRE version it's looking for. That's the one we'll want to point to when we issue the linwpinstall command again.

From what I understand, the InstallShield distribution of this program is looking for a very specific version of Java to be loaded on your machine (in this case, one that reports itself as "IBM Java Runtime Environment (JRE) 1.3 for Linux"). If this exact version of Java is not found, the whole install will just fail -- even if you have the Sun JRE installed, or a slightly different version of the IBM JRE (like 1.3.1 instead of 1.3).

At this point, you have 3 options:

Give up and go do something productive.

Copy or make a symlink of the IBMJava2-13 and IBMJava2-131 folders in your /opt directory, and try running lwpinstall again. This will likely work, because the first place the install program looks for the proper IBM JRE files is in the /opt directory.

Pass another argument to the linwpinstall program, telling it where that specific version of Java is. Because we downloaded and extracted the IBM 1.3 and 1.3.1 JRE earlier, we just have to point to whichever one is relevant. In my case, the modified command I had to issue was:

./dist/lwpinstall -is:log ./log2.txt -is:javahome /usr/lib/j2se/IBMJava2-13 

With any luck, your install will then start properly, and you're off and running. If not, check the new log file that got created (log2.txt from the command above), and try troubleshooting from there. Some installs may be expecting a javahome directory that ends in "jre" (like /usr/lib/j2se/IBMJava2-13/jre).

Also, some of the other install packages for Portal (possibly Application Server or WSAD, but I can't remember) seem to want 1.3.1 instead of 1.3, which is why we downloaded both the 1.3 and 1.3.1 versions of the IBM JRE before we started. And some of the installs are smart enough to look in their own JDK directories first, but if the Java program in that directory segfaults when it starts up (as discussed in Step 3), then it will just keep going and try to look in about 15 other local directories (like /opt).

As you continue through the install, if you seem to get any other strange or silent errors, you can check the log files that get created in your /tmp directory. There will be several files, and you might be able to diagnose other problems from there.