3 Replies Latest reply on Apr 15, 2003 1:17 PM by hanswurst33

    dll's in 3.0.4

    kashpaw

      I'm in the process of upgrading an app from JBoss2.4.4 to 3.0.4. I'm using JDK1.4.0 and Windows2000.

      In 2.4.4, in order for my dll's to be found, I put them in lib/ext, and linked to files of the same name in $JBOSS_HOME/bin (so that they'd be found on the java.library.path - the exec dir is on the library path in Windows). An ejb then called into the native library via a jni wrapper (in another jar in lib/ext) that does the loadLibrary call. One wierd thing is that I had to have the dll's in the bin dir - if I instead explicitly specified that the java.library.path be lib/ext, an UnsatisfiedLinkError would be thrown saying the library couldn't be found. Okay, not pretty, but it worked.

      In 3.0.4, I put the dll's in the /lib dir, and linked to files of the same name in bin. But this no longer works - I get an UnsatisfiedLinkError in one of the calls to native code (but at least it doesn't complain that it can't find the library). I've tried moving the dlls to different places (for example, to the jre/lib which loads 'em on startup, but that's no good, since one of my calls into this commercial library does a load too, and the JVM really hates that) and explicitly setting the library path, but nothing has worked.

      More specifically, the dll's are Tibco InConcert icjni.dll and inconcert.dll. And here's the stack trace:

      12:47:56,805 ERROR [LogInterceptor] Unexpected Error:
      java.lang.UnsatisfiedLinkError: initialize
      at com.inconcert.icjava.server.IcSessionNImpl.initialize(Native Method)
      at com.inconcert.icjava.server.IcSessionRemImpl.initialize(IcSessionRemImpl.java:75)
      at com.inconcert.icjava.IcSessionImpl.initialize(IcSessionImpl.java:45)
      at com.inconcert.icjava.IcServerImpl.createSession(IcServerImpl.java:37)
      at com.inconcert.icjava.IcClient.directInitialize(IcClient.java:129)
      at com.skyoptix.platform.meteor.server.workflow.uirqhandler.WfUIRequestHandlerBean.ejbCreate(WfUIRequestHandlerBean.java:294)

      Any useful suggestions much appreciated!

      Bill

        • 1. Re: dll's in 3.0.4
          kashpaw

          Is this a classloader issue?

          • 2. Re: dll's in 3.0.4
            kashpaw

            Anyone? Please? Pretty please? Another thread mentioned something about resource adapters, but is it necessary to go there? I want something quick and dirty. I know the classloader architecture changed alot from jboss 2.4 to 3.0.

            • 3. Re: dll's in 3.0.4
              hanswurst33

              Hi,
              I have got the same Problem. I tried to put the dll
              in my jar archive but I still get the UnsatisfiedLinkError.

              Does anyone know the answer? Please post it.

              Kind regards
              Olaf