tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ian Warner" <>
Subject java.lang.UnsatisfiedLinkError: no c in java.library.path
Date Thu, 15 May 2003 19:11:41 GMT
Hi group:

Any help with the follwoing error would be greatly appreciated

2003-05-15 12:50:15 StandardContext[/hello-jaxrpc]: Exception sending context initialized
event to listener instance of class com.sun.xml.rpc.server.http.JAXRPCContextListener
java.lang.UnsatisfiedLinkError: no testc in java.library.path

starting the application but can't find "testc.dll" is the problem but where should i put
it under the tomcat directory structure? i have run out of places to try - i've tried WEB-INF,
WEB-INF/classes, shared/classes and even tried puttin it jar format under WEB-INF/lib and
shared/lib but to no avail. Here's the xml that starts the app if it helps, it is called hello-jaxrpc
and resides in webapps (there's no entry in the server.xml)

<Context path="/hello-jaxrpc" docBase="../webapps/hello-jaxrpc" debug="3" privileged="true">

  <Logger className="org.apache.catalina.logger.FileLogger"
          prefix="hello-jaxrpc_log." suffix=".txt" timestamp="true"/>


Here's what i'm trying to do. I have a client that is sending a msg to a simpe tomcat server
app called hello.
package hello;
public class HelloImpl implements HelloIF {

 public String message = "Hello ";

    public String sayHello(String s) {
    return message + si;
The above server code works fine, the client sends a string, this server sends back hello
+ string to the client, so far so good.

Now the trouble comes -  i'm trying to call a "c" class in testc.dll from the above java class
(modified below) but get "java.lang.UnsatisfiedLinkError: no testc in java.library.path" in
the hello-jaxrpc_log i set up for the application. How do I set the java.library.path ? Or
what's the default path? I thought is was webapps/WEB-INF/classes

Here the modifed code

package hello;
public class HelloImpl implements HelloIF {

 public String message = "Hello ";
 public int i=0;

    public String sayHello(String s) {
    i = new HelloImpl().gemsg(); // added call to native code
    return message + s + i;
    public native int getmsg(); // getmsg() is a c routine compiled into testc.dll, all it
does is return an integer.

    static {
        System.loadLibrary("testc"); // this fails when the application is being loaded by
tomcat, i never even get to run the client

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message