Hi Pablo we also use JNI in our web apps. it works (except the reloading issue, but that's another story).
we use the ./bin/setenv.sh script for our settings, therefore: ... # must contain the ACE Agent JNI library "libaceagent.so": LD_LIBRARY_PATH=/home/bgo/deploy/sr-hls/native export LD_LIBRARY_PATH ... I assume, your JNI implementation is somehow broken... and this makes Tomcat stop... but that's just a wild guess from far away... regards -Bernd. > -----Original Message----- > From: J.Pablo M [mailto:[EMAIL PROTECTED] > Sent: Montag, 26. Januar 2004 17:20 > To: [EMAIL PROTECTED] > Subject: TOMCAT and JNI problem... > > > Hello. > > I'm running a JSP based Web aplicacion using Tomcat wich > uses a Java Class > that loads a > native library (JNI). > > The files are created as follows: > > > javac extractor/HTDInterface.java > > javah extractor.HTDInterface > > then I compile my c++ source code with the header file > "extractor_HTDInterface.h" to create > the shared library "libhtd.so" > > create a jar file with the Class that implements JNI call > > static { > System.loadLibrary("htd"); > > >jar cvf extractor.jar extractor/HTDInterface.class > > For testing a standalone application I set my CLASSPATH to include > extractor.jar > and libhtd.so file is placed inside the JDK at > /JAVA_HOME/jre/lib/i386/ > I successfully build and run The standalone application usin > the shared > library. > > For the web application, extractor.jar is placed at > /common/lib/ TOMCAT > directory > I leave the libhtd.so at the /JAVA_HOME/jre/lib/i386/ JDK directory. > When my JSP based Web application calls the native library method > the Tomcat just STOPS.... it doesn't work STOPS.... > The message is: > The connection was refused when attempting to contact > localhost:8080 > I have to run startup.sh script again. > > I took off the libhtd.so file from /JAVA_HOME/jre/lib/i386/ > and I placed it > in a different directory outside the tomcat: > > /home/myuser/lib/libhtd.so > > Then I made a script to start the tomcat with the LD_LIBRARY_PATH > environment variable set up: > ------------------------------------------------------------- > #!/bin/sh > export JAVA_HOME=/opt/java > export CATALINA_HOME=/usr/local/jakarta-tomcat > export PATH=${JAVA_HOME}/bin:${PATH} > export JAVA_PATH=${JAVA_HOME} > # path to load the libhtd.so shared library > export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/myuser/lib > > cd /usr/local/jakarta-tomcat/bin > sh startup.sh > ------------------------------------------------------------- > > BUT the same happens when the Web application calls the native library > method > the Tomcat just STOPS.... it doesn't work ......STOPS.... > > The message is: > The connection was refused when attempting to contact > localhost:8080 > > just like when you try to load the web application and the > TOMCAT server is > not UP. > > Does anyone knows how to solve this ???? > > I have read that maybe setting up the CATALINA_OPTS > environment variable > can solve this > problem.... BUT I dont know how to set that variable. ??????? > > I hope this time I've made myself clear > > Another thing: I'm working under Red Hat 9.0 TOMCAT 4.1.27 > and JDK 1.4.2 > > Pablo Vidal > > _________________________________________________________________ > MSN Amor: busca tu � naranja http://latam.msn.com/amor/ > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
