dev@glassfish.java.net

Re: WebService can't find JNI DLLs

From: Harsha Godugu <Harsha.Godugu_at_Sun.COM>
Date: Tue, 08 Jan 2008 15:25:48 -0800

Did they try -Djava.library.path="my/lib/dll/path" option in the
command line?

Bhakti Mehta wrote:
> Posting for a user who submitted this bug.
> https://glassfish.dev.java.net/issues/show_bug.cgi?id=3987
>
> Would system-classpath element of java-config in
> AS_HOME/domains/domain1/config/domain.xml help in this case?
>
> gibsonw wrote
> "I am prototyping a Java web service that uses the third party tool
> NeticaJ. There is a NeticaJ.jar that uses NeticaJ.dll that uses
> Netica.dll. To get this to
> run, one must put NeticaJ.jar on the classpath and put the directory
> D:\MSIKE_LIBRARY containing the two dlls on the system PATH.
>
> I have tried everything I can think of to configure the GlassFish server
> JVM to be able to find the dlls, such as setting
> NativeLibraryPathPrefix to D:\MSIKE_LIBRARY, but the server still
> can't find the dlls.
>
> I used NETBEANS 5.5 to deploy to glassfish that came bundled with
> Netbeans on Win XP.
> Of course I have D:\MSIKE_LIBRARY on the Windows path, but the GlassFish
> server seems
> to ignore that.
>
> Please advise how to do this.
>
> HERE IS THE Exception STACK TRACE
>
> Log Entry Detail
>
> Timestamp Jan 8, 2008 14:33:37.143 Log Level SEVERE Logger
> com.sun.xml.ws.server.sei.EndpointMethodHandler Name-Value Pairs
> _ThreadID=17;_ThreadName=httpSSLWorkerThread-8080-
> 2;_RequestID=11d7c2c9-2f47-47c4-a86b-2cc765d99d4d; Record Number 1640
> Message ID D Complete Message \MSIKE_LIBRARY\NeticaJ.dll: Can't find
> dependent libraries java.lang.UnsatisfiedLinkError:
> D:\MSIKE_LIBRARY\NeticaJ.dll: Can't find dependent libraries at
> java.lang.ClassLoader$NativeLibrary.load(Native Method) at
> java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751) at
> java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676) at
> java.lang.Runtime.loadLibrary0(Runtime.java:823) at
> java.lang.System.loadLibrary
> (System.java:1030) at norsys.netica.NETICA.<clinit>(NETICA.java:255)
> at norsys.netica.Environ.<init>(Environ.java:82) at
> server.Inferencing.doInferencing(Inferencing.java:108) at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke
> (Method.java:597) at
> com.sun.enterprise.webservice.InstanceResolverImpl$1.invoke
> (InstanceResolverImpl.java:112) at
> com.sun.xml.ws.server.InvokerTube$2.invoke
> (InvokerTube.java:146) at
> com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke
> (EndpointMethodHandler.java:257) at
> com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:93)
> at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595) at
> com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554) at
> com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539) at
> com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436) at
> com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl.process
> (AbstractTubeImpl.java:106) at
> com.sun.enterprise.webservice.MonitoringPipe.process(MonitoringPipe.java:147)
> at com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest
> (PipeAdapter.java:115) at
> com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595) at
> com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554) at
> com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539) at
> com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436) at
> com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl.process
> (AbstractTubeImpl.java:106) at
> com.sun.enterprise.webservice.CommonServerSecurityPipe.processRequest
> (CommonServerSecurityPipe.java:218) at
> com.sun.enterprise.webservice.CommonServerSecurityPipe.process
> (CommonServerSecurityPipe.java:129) at
> com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(PipeAdapter.java:115)
> at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595) at
> com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554) at
> com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539) at
> com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436) at
> com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:243)
> at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle
> (HttpAdapter.java:444) at
> com.sun.xml.ws.transport.http.HttpAdapter.handle
> (HttpAdapter.java:244) at
> com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle
> (ServletAdapter.java:135) at
> com.sun.enterprise.webservice.JAXWSServlet.doPost
> (JAXWSServlet.java:159) at javax.servlet.http.HttpServlet.service
> (HttpServlet.java:738) at javax.servlet.http.HttpServlet.service
> (HttpServlet.java:831) at
> org.apache.catalina.core.ApplicationFilterChain.servletService
> (ApplicationFilterChain.java:411) at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:317) at
> org.apache.catalina.core.ApplicationFilterChain.doFilter
> (ApplicationFilterChain.java:198) at
> org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter
> (MonitorFilter.java:390) at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:230) at
> org.apache.catalina.core.ApplicationFilterChain.doFilter
> (ApplicationFilterChain.java:198) at
> org.apache.catalina.core.StandardWrapperValve.invoke
> (StandardWrapperValve.java:288) at
> org.apache.catalina.core.StandardContextValve.invokeInternal
> (StandardContextValve.java:271) at
> org.apache.catalina.core.StandardContextValve.invoke
> (StandardContextValve.java:202) at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke
> (StandardPipeline.java:577) at com.sun.enterprise.web.WebPipeline.invoke
> (WebPipeline.java:94) at
> org.apache.catalina.core.StandardHostValve.invoke
> (StandardHostValve.java:206) at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke
> (StandardPipeline.java:577) at
> org.apache.catalina.core.StandardPipeline.invoke
> (StandardPipeline.java:571) at
> org.apache.catalina.core.ContainerBase.invoke
> (ContainerBase.java:1080) at
> org.apache.catalina.core.StandardEngineValve.invoke
> (StandardEngineValve.java:150) at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
> at org.apache.catalina.core.StandardPipeline.doInvoke
> (StandardPipeline.java:577) at
> org.apache.catalina.core.StandardPipeline.invoke
> (StandardPipeline.java:571) at
> org.apache.catalina.core.ContainerBase.invoke
> (ContainerBase.java:1080) at
> org.apache.coyote.tomcat5.CoyoteAdapter.service
> (CoyoteAdapter.java:270) at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter
>
> (DefaultProcessorTask.java:637) at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess
> (DefaultProcessorTask.java:568) at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process
> (DefaultProcessorTask.java:813) at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask
>
> (DefaultReadTask.java:339) at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask
> (DefaultReadTask.java:261) at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask
> (DefaultReadTask.java:212) at
> com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask
> (PortUnificationPipeline.java:361) at
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
> at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run
> (SSLWorkerThread.java:106)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>