You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Jason Drake <jd...@windchill.com> on 2000/08/05 00:04:51 UTC

iPlanet and Tomcat on AIX

Hello fellow tomcat users,
    I have been trying to get Tomcat 3.1 up and running under our
AIX (believe it is 4.3.3 running on a RS/6000 machine).  I was
successful at compiling the .so file for Linux (I run SUSE 6.4 on my
desktop) by modifying the sun makefile for linux.  Of course, going to
AIX is not so easy.  In fact, a lot of the make file had to be
completely rewritten.  I have tried, ld and makeC++SharedLib_r to make
the file.  I have also used both xlC and gcc to compile the source
files.  As another measure, I modified the makefile provided with
iPlanet for compiling NSAPI so's and all return the same error when
trying to load the jk_init function inside iPlanet.

[https-asteroid.mn.ptc.com]: start failed. (2: unknown early startup
error)
       [https-asteroid.mn.ptc.com]: In jk_init
/qa/asteroid/Tomcat/jakarta-tomcat/conf/workers.properties
       debug
/qa/asteroid/iPlanet/server4/https-asteroid.mn.ptc.com/logs/nsapi.log
       [https-asteroid.mn.ptc.com]: conf_init: Error running init
function jk_init: unknown error
       [https-asteroid.mn.ptc.com]: server exit: status 1

In otherwords, it appears that the library was loaded properly but it
could not execute the jk_init method???  Unfortunately
iPlanet/NES errors are so poor that it is hard to understand what is
happening here.

I have provided the Makefile I used to create this error (with zero
compile errors and warnings) and the obj.conf lines from the webserver.
If anyone has built this NSAPI so for AIX and either iPlanet or NES3.6x
I'd be delighted to hear from you on how it was done!!!

I have checked that all the paths accessed in the obj.conf file are
writable by the netscape and tomcat user, and the paths are properly
defined

The servlet engine (ie. Tomcat) works fine standalone.  It is only when
integrating with the iPlanet web browser I can't get this so library to
work.

The obj.conf file setup is exactly as it appears on my linux box (except
paths etc.)

Thanks
            Jason


MAKEFILE
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

SUITESPOT_HOME=/path/to/my/iPlanet/plugins/directory
INCLUDE_FLAGS=-I $(SUITESPOT_HOME)/include
#CC_CMD=xlC -bM:SRE -berok -bexpall -DXP_UNIX -DAIX -DNET_SSL
-D_REENTRANT
CC_CMD=gcc -DXP_UNIX -DAIX -DNET_SSL -D_REENTRANT
DEF_LIBPATH=/usr/lib/threads:/usr/ibmcxx/lib:/usr/lib:/lib
DLL_LDFLAGS=-p 0 -G -blibpath:$(DEF_LIBPATH)
LD_SHAREDCMD=/usr/ibmcxx/bin/makeC++SharedLib_r -lc -bnoentry -bM:SRE
$(DLL_LDFLAGS)


JAVA_HOME=/usr/java_dev2/

all:
prepare:

OS_TYPE=aix
INCLUDEDIR=$(SUITESPOT_HOME)/include
JAVA_INCLUDE=$(JAVA_HOME)/include
JK_OBJS = jk_ajp12_worker.o jk_lb_worker.o jk_sockbuf.o jk_connect.o
jk_map.o \
jk_uri_worker_map.o jk_nsapi_plugin.o jk_util.o jk_jni_worker.o \
jk_pool.o jk_worker.o

INCLUDE_FLAGS=-I$(INCLUDEDIR) -I$(INCLUDEDIR)/base -I$(INCLUDEDIR)/frame
-I$(JAVA_INCLUDE) -I$(JAVA_INCLUDE)
COMMON_DEFS=-DMCC_HTTPD -DXP_UNIX -DAIX -DSPAPI20

all: nsapi_redirector.so

nsapi_redirector.so: $(JK_OBJS)
        $(LD_SHAREDCMD) $(JK_OBJS) -o nsapi_redirector.so
$(EXTRA_LDDEFINES)

.c.o:
        $(CC_CMD) $(COMMON_DEFS) $(INCLUDE_FLAGS) -c $<

clean:
        rm $(JK_OBJS)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////






OBJ.CONF file - NOTE: the alias to servlets are not here, but should be
needed to load the library
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

# Netscape Communications Corporation - obj.conf
# You can edit this file, but comments and formatting changes
# might be lost when the admin server makes changes.

Init fn="flex-init"
access="/iPLANET_Directory/Server_Directory/logs/access"
format.access="%Ses->client.ip% - %Req->vars.auth-user% [%SYSDATE%]
\"%Req->reqpb.clf-request%\" %Req->srvhdrs.clf-status%
%Req->srvhdrs.content-length%"
Init fn="load-types" mime-types="mime.types"
Init fn="load-modules" funcs="jk_init,jk_service"
shlib="/iPLANET_Directory/plugins/nsapi/nsapi_redirector.so"
Init fn="jk_init"
worker_file="/Tomcat_Direcotry/conf/workers.properties"
log_level="debug"
log_file="/iPLANET_Direcotyr/Server_Directory/logs/nsapi.log"

<Object name="default">
NameTrans fn="pfx2dir" from="/ns-icons"
dir="/iPLANET_Directory/ns-icons" name="es-internal"
NameTrans fn="pfx2dir" from="/mc-icons"
dir="/iPLANET_Directory/ns-icons" name="es-internal"
NameTrans fn="pfx2dir" from="/help"
dir="/iPLANET_Directory/manual/https/ug" name="es-internal"
NameTrans fn="pfx2dir" from="/manual"
dir="/iPLANET_Directory/manual/https" name="es-internal"
NameTrans fn="document-root" root="/iPLANET_Directory/docs"
PathCheck fn="unix-uri-clean"
PathCheck fn="check-acl" acl="default"
PathCheck fn="find-pathinfo"
PathCheck fn="find-index" index-names="index.html,home.html"
ObjectType fn="type-by-extension"
ObjectType fn="force-type" type="text/plain"
Service method="(GET|HEAD)" type="magnus-internal/imagemap"
fn="imagemap"
Service method="(GET|HEAD)" type="magnus-internal/directory"
fn="index-common"
Service method="(GET|HEAD|POST)" type="*~magnus-internal/*"
fn="send-file"
AddLog fn="flex-log" name="access"
</Object>

<Object name="cgi">
ObjectType fn="force-type" type="magnus-internal/cgi"
Service fn="send-cgi"
</Object>

<Object name="es-internal">
PathCheck fn="check-acl" acl="es-internal"
</Object>

<Object name="Tomcat-Authenticated">
PathCheck fn="check-acl" acl="Authenticated"
ObjectType fn="force-type" type="text/plain"
Service fn="jk_service" worker="ajp12"
</Object>

<Object name="Tomcat-Anonymous">
PathCheck fn="check-acl" acl="Anonymous"
ObjectType fn="force-type" type="text/plain"
Service fn="jk_service" worker="ajp12"
</Object>
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



--
///////////////////////////////////////////////////
Jason A. Drake
   PTC - Windchill R&D
   Software Engineer - Runtime Services
   1200 W. County Rd E
   Arden Hills, MN 55112

   (651)-765-2123 (PH)
   (651)-765-2156 (FAX)

   jdrake@windchill.com
///////////////////////////////////////////////////