WebSphere7.0集群版调用调用动态库so
环境:red hat enterprise 4.8,64位 WebSphere7.0 nd版
前段时间也写过两篇调用动态库的文章:
java调用动态库(.dll或.so)
再续java调用动态库so
本以为可以解决,但还是出现了问题.
在tomcat下我相信没点问题.
通过测试在webSphere非集群版(34位/64位)都是可以成功的,但就是在64位,WebSphere7.0nd版就调用不成功.不知道有没有高手碰到过这种问题.
so文件放在:~~/opt/IBM/WebSphere/AppServer/bin/
看日志好像是有加载,程序跑到调用so里的方法时,WebSphere就崩溃,不知道什么原因:
下面我的日志:
native_stderr.log
---------------------------------------------------------------------------------------------
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000004 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000080
Handler1=0000002A959D1780 Handler2=0000002A95D55F20 InaccessibleAddress=0000000000000000
xmm14 4218000000000000 (f: 0.000000, d: 2.576980e+10)
xmm15 402fe2804e87b080 (f: 1317515392.000000, d: 1.594239e+01)
Module=/opt/IBM/WebSphere/AppServer/bin/libJniDecrypt.so
Module_base_address=0000002AA5600000 Symbol=Java_com_wd_ty_decrypt_JNIDecrypt_decrypt
Symbol_address=0000002AA5611820
Target=2_40_20080816_022093_LHdSMr (Linux 2.6.9-89.ELsmp)
CPU=amd64 (2 logical CPUs) (0xf6a74000 RAM)
----------- Stack Backtrace -----------
/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs/libj9prt24.so [0x2a95d4ebf3]
/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs/libj9vm24.so [0x2a959d21fd]
/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs/libj9prt24.so [0x2a95d56091]
/lib64/tls/libc.so.6 [0x3a07a2e300]
/opt/IBM/WebSphere/AppServer/bin/libJniDecrypt.so(Java_com_wd_ty_decrypt_JNIDecrypt_decrypt+0xa3) [0x2aa56118c3]
[0x12204f00]
---------------------------------------
JVMDUMP006I 正在处理转储事件“gpf”,详细信息“” - 请稍候。
JVMDUMP007I JVM 正在请求 System 转储(使用“/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/core.20100706.144005.31696.0001.dmp”)
JVMDUMP010I System 转储已写入 /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/core.20100706.144005.31696.0001.dmp 中
JVMDUMP007I JVM 正在请求 Snap 转储(使用JVMDUMP013I 已处理转储事件“gpf”,详细信息“”。
************ Start Display Current Environment ************
WebSphere Platform 7.0.0.0 [ND 7.0.0.0 r0835.03] running with process name 192Cell01192Node01server1 and process id 31832
Host Operating System is Linux, version 2.6.9-89.ELsmp
Java version = 1.6.0, Java Compiler = j9jit24, Java VM name = IBM J9 VM
was.install.root = /opt/IBM/WebSphere/AppServer
user.install.root = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01
Java Home = /opt/IBM/WebSphere/AppServer/java/jre
ws.ext.dirs
Host Operating System is Linux, version 2.6.9-89.ELsmp
Java version = 1.6.0, Java Compiler = j9jit24, Java VM name = IBM J9 VM
was.install.root = /opt/IBM/WebSphere/AppServer
user.install.root = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01
Java Home = /opt/IBM/WebSphere/AppServer/java/jre
ws.ext.dirs = /opt/IBM/WebSphere/AppServer/java/lib:/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/classes:/opt/IBM/WebSphere/AppServer/classes:/opt/IBM/WebSphere/AppServer/lib:/opt/IBM/WebSphere/AppServer/installedChannels:/opt/IBM/WebSphere/AppServer/lib/ext:/opt/IBM/WebSphere/AppServer/web/help:/opt/IBM/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/properties:/opt/IBM/WebSphere/AppServer/properties:/opt/IBM/WebSphere/AppServer/lib/startup.jar:/opt/IBM/WebSphere/AppServer/lib/bootstrap.jar:/opt/IBM/WebSphere/AppServer/lib/jsf-nls.jar:/opt/IBM/WebSphere/AppServer/lib/lmproxy.jar:/opt/IBM/WebSphere/AppServer/lib/urlprotocols.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batchboot.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batch2.jar:/opt/IBM/WebSphere/AppServer/java/lib/tools.jar
Java Library path = /opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs:/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64:/opt/IBM/WebSphere/AppServer/bin::/usr/lib
************* End Display Current Environment *************
-----------------------------------------------------------------------------------
native_stdout.log
----------------------------
*********** Start Display Current Environment ************
WebSphere Platform 7.0.0.0 [ND 7.0.0.0 r0835.03] running with process name 192Cell01192Node01server1 and process id 30737
Host Operating System is Linux, version 2.6.9-89.ELsmp
Java version = 1.6.0, Java Compiler = j9jit24, Java VM name = IBM J9 VM
was.install.root = /opt/IBM/WebSphere/AppServer
user.install.root = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01
Java Home = /opt/IBM/WebSphere/AppServer/java/jre
ws.ext.dirs = /opt/IBM/WebSphere/AppServer/java/lib:/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/classes:/opt/IBM/WebSphere/AppServer/classes:/opt/IBM/WebSphere/AppServer/lib:/opt/IBM/WebSphere/AppServer/installedChannels:/opt/IBM/WebSphere/AppServer/lib/ext:/opt/IBM/WebSphere/AppServer/web/help:/opt/IBM/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/properties:/opt/IBM/WebSphere/AppServer/properties:/opt/IBM/WebSphere/AppServer/lib/startup.jar:/opt/IBM/WebSphere/AppServer/lib/bootstrap.jar:/opt/IBM/WebSphere/AppServer/lib/jsf-nls.jar:/opt/IBM/WebSphere/AppServer/lib/lmproxy.jar:/opt/IBM/WebSphere/AppServer/lib/urlprotocols.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batchboot.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batch2.jar:/opt/IBM/WebSphere/AppServer/java/lib/tools.jar
Java Library path = /opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs:/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64:/opt/IBM/WebSphere/AppServer/bin::/usr/lib
************* End Display Current Environment *************
----------------------------------------------------------------------
SystemErr.log
---------------------------------------------------------------------
************ Start Display Current Environment ************
WebSphere Platform 7.0.0.0 [ND 7.0.0.0 r0835.03] running with process name 192Cell01192Node01server1 and process id 30737
Host Operating System is Linux, version 2.6.9-89.ELsmp
Java version = 1.6.0, Java Compiler = j9jit24, Java VM name = IBM J9 VM
was.install.root = /opt/IBM/WebSphere/AppServer
user.install.root = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01
Java Home = /opt/IBM/WebSphere/AppServer/java/jre
ws.ext.dirs = /opt/IBM/WebSphere/AppServer/java/lib:/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/classes:/opt/IBM/WebSphere/AppServer/classes:/opt/IBM/WebSphere/AppServer/lib:/opt/IBM/WebSphere/AppServer/installedChannels:/opt/IBM/WebSphere/AppServer/lib/ext:/opt/IBM/WebSphere/AppServer/web/help:/opt/IBM/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/properties:/opt/IBM/WebSphere/AppServer/properties:/opt/IBM/WebSphere/AppServer/lib/startup.jar:/opt/IBM/WebSphere/AppServer/lib/bootstrap.jar:/opt/IBM/WebSphere/AppServer/lib/jsf-nls.jar:/opt/IBM/WebSphere/AppServer/lib/lmproxy.jar:/opt/IBM/WebSphere/AppServer/lib/urlprotocols.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batchboot.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batch2.jar:/opt/IBM/WebSphere/AppServer/java/lib/tools.jar
Java Library path = /opt/IBM/WebSphere/AppServer/java/jre/lib/amd64/compressedrefs:/opt/IBM/WebSphere/AppServer/java/jre/lib/amd64:/opt/IBM/WebSphere/AppServer/bin::/usr/lib
************* End Display Current Environment *************
--------------------------------------------------------------
SystemOut.log
----------------------------------------------------------------
日志正常,只是跑到调用so方法时服务宕掉。
表达能力不是很好,希望有高手过来指点。
能提供帮助的连接也行,都往上贴。