Yeah, you have to put classes that use JNI in a lib directory such as common/lib rather than WEB-INF/lib, otherwise you will get errors when your servlet gets reloaded. There is a note about it in the release notes.
Also, you can set CATALINA_OPTS=-Djava.library.path=<path containing your native code> to specify the directory that your native code is located in. Jon ----- Original Message ----- From: "Larry Meadors" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, February 11, 2002 4:42 PM Subject: Re: I can't stand the "UnsatisfiedLinkErrors" anymore withTomcat 4.0.1! > >>Can the class loader used to load the classes in the web app load > native libraries... > I think that classes in the web app can call native methods, but I am > by no stretch of the imagination an expert on this. When I ran the > Oracle OCI JDBC driver (which uses native code) it worked in the > WEB-INF/lib directory or in the common/lib directory. I had a separate > issue when reloading classes, but I think that was Oracle specific. > > >>Do I really need to load my class with the native methods...how? > I also think that classes in the $CATALINA_HOME/common/lib get loaded > by the "common" classloader. > > >>I am a big fan of open source, but the troubles I am having... > I feel your pain. Best of luck getting this going, be sure to share > when you do to spare the next poor bugger. ;-) > > Larry > > >>> [EMAIL PROTECTED] 02/08/02 08:29PM >>> > Hi All, > > After more that a week of messing with it, I'm convinced there is no > way to call native methods within Tomcat. I have read the class loader > INFO file 100 times, searched and read the list serve archives for > hours, followed all the suggestions found within those messages, and > still I receive "UnsatisfiedLinkErrors" whenever I attempt to run native > methods. > > Facts: > > * I can execute the methods with no problems when run from the command > line, but I get "UnsatisfiedLinkErrors" running under Tomcat 4.0.1. > Hummm... > > Questions: > > * Can the class loader used to load the classes in the web app load > native libraries with System.loadLibrary? Some list serve messages say > no, others suggest yes. > * Do I really need to load my class with the native methods in the > "Common" class loader? If so, how? None of the methods I have tried > work. > * Basically, how do I need to sweet talk Tomcat to make it execute my > native methods? > > I'm really frustrated and desperate! If anyone has made this work, > please share your wisdom. I am a big fan of open source, but the > troubles I am having really make me wish I could call tech support at > some software company! Any suggestions are welcome. Thanks.. > > Cheers, > > Jim Boone > > -- To unsubscribe: <mailto:[EMAIL PROTECTED]> For additional commands: <mailto:[EMAIL PROTECTED]> Troubles with the list: <mailto:[EMAIL PROTECTED]>
