作者sbrhsieh (偶尔想摆烂一下)
看板java
标题Re: [问题] jni与Tomcat整合的问题
时间Mon Aug 30 21:31:33 2010
※ 引述《flowwinds (..)》之铭言:
: 我觉得是 JNI 跟 Tomcat整合的问题, 不过还是不清楚如何处理
: 以下是我的测试:
: 1. 我用程式启动这个CXF service, client连的上且结果正确
: 所以我判断是JNI Tomcat整合的问题
: 2. 这个含有native method class 比较特殊的是, native method 所用到的
: C code 会动态载入 2个 dll (用windows.h的LoadLibrary),呼叫 dll里面的function
: 之前有测试过其他的native method, C code中只使用 printf不载入其他dll
: 这样的话放到Tomcat上可以被client正常的呼叫, 所以问题可能是出在这
: 有人有遇过同样问题, 或者知道如何处理的吗?
: 谢谢~
调用 LoadLibrary 时是使用绝对路径或相对路径来指明目标 dll?
若是後者可能就是路径的问题(或者说环境/组态的问题)。
试着改写 native method 使用绝对路径来载入 dll,可以进一步确认问题点。
*Windows 搜寻 DLL 的顺序。
http://msdn.microsoft.com/zh-tw/library/7d83bc18(v=VS.80).aspx
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.160.177.86
※ 编辑: sbrhsieh 来自: 218.160.177.86 (08/30 21:34)
1F:→ flowwinds:相对路径, 我会再进一步确认, 谢谢~ 08/30 21:39
2F:→ flowwinds:我有设定C code找不到dll的话会丢UnsatisfiedLinkError 08/30 21:45
3F:→ flowwinds:Tomcat log中没看到相关的就自己关掉了.... 08/30 21:47