This page documents how to install the GroupWise 6.0.2, 6.5, and 6.5.1 WebAccess Servlets on a Linux box using Apache 1.3.x, Jakarta Tomcat 4, the SUN J2SDK. In truth this is hardly limited to Linux as all of these components are available for or work under many flavors of Unix. You could also replace many of these components with their competitors and get the same result.
I decided to do this under Linux, because I like Unix and Linux is the Unix I have. If you choose this route you will be rewarded with a solution that provides:
This work is based on notes at http://www.customresearch.com/gw6/, my employer's previous installation, and work by Chuck Parks, who is a really, really cool guy.
This installation is relocated out of the default location of the Tomcat ROOT app to an app called "gw". Emphasis is placed on ease of deployment and management. All components have been integrated into an RPM which contains a WAR file of the servlets, jars, docs and some other files.
The RPM is very "Redhat" which should make it ease for RedHat Linux users to deploy and simple for non-RedHat users to modify since they're used to modifying RedHat oriented RPMs, right?? ;-) Components have been relocated as follows:
| Item | Standard Novell Location(s) | New Locations |
|---|---|---|
| Config files | /novell, /novell/webaccess, /novell/webpublisher | /etc/gw |
| Scratch dirs | /novell/webaccess/temp, /novell/webpublisher/temp | /var/tmp/webaccess |
| State dirs | /novell/webaccess/users | /var/lib/webaccess/users |
| Log dirs | /novell/webaccess/logs, /novell/webpublisher/logs | /var/log/webaccess/, /var/log/webpublisher/ |
| webaccessservlets.tar | $CATALINA_HOME/webapps/ROOT/WEB-INF/classes | gw.war file /WEB-INF/classes |
| webaccessjars.tar | $CATALINA_HOME/webapps/ROOT/WEB-INF/libs | gw.war file /WEB-INF/libs |
| webaccessdocs.tar | Web server DocumentRoot | gw.war file /com |
| gw.war file | none | $CATALINA_HOME/webapps |
All of these customizations are embodied in a bundled containing an RPM spec file and a few config files. These bundles are available for GroupWise 6.0.2, GroupWise 6.5, and GroupWise 6.5.1. Each of these bundles is most of a source RPM. The Novell copyrighted parts have been removed as have the parts that are 100% site specific.
To build the RPM from this bundle you will need a JDK (I used Sun Java 2 SDK 1.4.0 and installed it something like this) with the binaries (specifically jar) in your path.
You will also need these servlet tar files:
webaccessdocs.tar webaccessjars.tar webaccessservlets.tar webaccess.tar (not required for 6.5.1, not actually not used in other versions.)
They can be found in ./internet/webacces/unix under your GroupWise software distribution directory.
The spec file also requires your copy of commgr.cfg.
A small image representing your organization or its directory. (GroupWise 6.5.x only)
You will also need some rudimentary knowledge of building RPMs from a spec file. That is beyond of the scope of this document, but you don't need to know much.
Locate your RPM build directory. By default on most RedHat boxes this is /usr/src/redhat where you can build as root. You can also construct a build directory under your home directory and build as non-root. Commands to set that up would look something like this:
cd ~ echo "%_topdir /home/$USER/mybuild" > .rpmmacros echo "%_tmppath /home/$USER/tmp" >>.rpmmacros mkdir -p ~/mybuild/BUILD mkdir -p ~/mybuild/RPMS/i386 mkdir -p ~/mybuild/SOURCES mkdir -p ~/mybuild/SPECS mkdir -p ~/mybuild/SRPMS
Change directories to your RPM build directory and extract the bundle:
cd ~/mybuild tar xzvf webaccess-srpm-parts-6.0.2-2.tgz
Change directory to the SOURCES directory and adjust the files index.html, webaccess.fragment.httpd.conf, and ldap.cfg for your site. In index.html look for the string "your.apache.server". In webaccess.fragment.httpd.conf, adjust the port number if need be. If Tomcat and Apache are not on the same host put the Tomcat server's hostname in place of localhost. ldap.cfg will need lots of adjustment for your site.
Copy your commgr.cfg to the SOURCES directory. To locate it see Novell TID 10051447.
Copy these files to the SOURCES directory:
webaccessdocs.tar webaccessjars.tar webaccessservlets.tar webaccess.tar
They can be found in ./internet/webacces/unix under your GroupWise software distribution directory.
In GroupWise 6.5.x, copy the image representing your organization to the SOURCES directory. Make sure you change the image file reference in the ldap.cfg above
In GroupWise 6.5.x, CD to the SPECS directory and modify this line to reference your ldap server image:
Source12: your.ldap.server.image.gif
If you have not logged out and in again since creating the .rpmmacros file, start a new shell, then CD to the SPECS directory and build the rpm. Those commands look something like this:
cd ~/mybuild/SPECS rpmbuild -ba webaccess-6.x.x-x.spec
If all went well you should have an RPM at ~/mybuild/RPMS/i386/
You will also need a functional Jakarta Tomcat installation. You could do it something like this.
As root, install the RPM you built. Those commands look something like this:
cd ~/mybuild/RPMS/i386/ su rpm -i webaccess-6.x.x-x.i386.rpm
Modify apache's httpd.conf to include the fragment at /etc/gw/webaccess.fragment.httpd.conf.
Restart apache
apachectl restart
Browse to Tomcat's web interface. By default this would be http://localhost:8080 though we used port 8180 in this installation. Select the manager application. You will be prompted for the username and password you put in during the Tomcat installation. In the field "WAR or Directory URL:" enter
jar:file:/usr/local/tomcat/webapps/gw.war!/
Click "Install" and the gw app will deploy (i.e., load and start).
Test webaccess by accessing http://localhost/gw/webacc/
If you don't have certificates for your apache server to allow the use of SSL, you should mint or buy some before you put this into production. You don't want the pass passwords and email content in the clear.
If you aren't rotating your logs, do that. This install puts a few log files in /var/log. Redhat's logrotate is a useful tool to deal with this problem. It is probably already installed on your system and can be reconfigured via /etc/logrotate.conf and files in /etc/logrotate.d.
If you aren't clearing your temp space, automate it. Webaccess sometimes leaves junk in the temp directories and it should be cleared to save space and improve security of user files.