I recently decided to try JBoss Portal. This is my story, as best I remember it, including some documentation of dead end paths.1. I went to the Red Hat site, clicked JBoss Enterprise Middleware Suite, clicked JBoss Portal, clicked JBoss Portal download page, and finally Download of JBoss Portal + JBoss AS
http://prdownloads.sourceforge.net/jboss/jboss-portal-2.4.0-CR1-bundled.zip?download
Alternatively, I could have gone directly to www.jboss.com, clicked the link for Developers and gone from there.
2. I unzipped the file in my home directory. I found the Quickstart Users Guide in docs/portal/quickstartuser/pdf. I noticed this quote in Chapter 1:
“JBoss Portal is platform independent, but this guide was developed using a windows platform. This guide should work equally well for Unix/Linux installations because JBoss Portal is 100% Pure Java. Obviously, you may need to download the tarball instead of the zipfile and use forward slashes instead of backslashes, etc.”
This sent me on a search for the tarball. I didn’t find it.
3. I started to look around in the directory structure. In bin, I found run.sh and jboss_init_redhat.sh. I looked in jboss_init_redhat.sh. I noticed that it defaulted to a user jboss and the files in a /usr/local/jboss directory. In case it was a convention and following it was important, I created said user with /usr/local/jboss as a home directory. I then logged in as jboss, unzipped the bundle again, and moved the subdirectories directly under /usr/local/jboss with jboss owning everything. There was, thus, /usr/local/jboss/bin, /usr/local/jboss/docs, etc.
4. Knowing from past experience, I set the permissions of the *.sh files in bin to have execute permission for jboss. I used chmod 755 *.sh but 700 works also if you feel protective.
5. I then looked more in jboss_init_redhat.sh. Via examination and trial and error, I discovered I needed to do the following:
a. Set some environmental variables. I put the following lines in /usr/local/jboss/.bashrc:
export JAVA_HOME=/usr/java/j2sdk1.4.2_12
export JBOSS_CONSOLE=/usr/local/jboss/jboss.log
Go ahead and “touch /usr/local/jboss/jboss.log” as the user jboss so that you’ll be able to read it after root writes it.
b. I made the following changes to jboss_init_redhat.sh
Changed JAVAPTH to /usr/java/j2sdk1.4.2_12/bin
Changed the “all” in the JBOSSSH to “default”
After this, I was able to run /usr/local/jboss/bin/jboss_init_redhat.sh as root and get things going.
6. Some notes on dead end paths followed:
a. I tried /usr/share/java and /usr/share/java-1.4.2 from the stock Fedora Core install. I would get $Proxy… class not found errors in the log. I then downloaded and installed the RPM from Sun. The init script then worked with the settings specified above.
b. The stock jboss_init_redhat.sh script uses “…run.sh -c all”. That appeared to look for things in /usr/local/jboss/server/all. There was nothing there. I changed “all” to “default” since /usr/local/jboss/server/default was there.
I am now happily going through the examples and tutorials. Let me know if you have any questions.