我这儿有一个MD5加密的DLL,我现在用java去掉用他,然后得到返回的字符串,现在我用JNI调用已经搞定,而且传进去的字符串得到返回的加密字符串也正确,没有问题,但是我把这个调用方法放到web应用里面去的时候,一到二天我的Weblogic服务器就会被搞死,我看了日志文件,是在调用DLL的时候,把JVM搞死了,weblogic也就跟着挂了。那位大哥帮我看一下,小弟万分感激。非常感谢。下面是我的日志代码:#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x2db53ee3, pid=1652, tid=2296
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# C [UseDll.dll+0x3ee3]
#--------------- T H R E A D ---------------Current thread (0x2b9b7e08): JavaThread "[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon [_thread_in_native, id=2296]siginfo: ExceptionCode=0xc0000005, reading address 0x2c455000Registers:
EAX=0x2c455058, EBX=0x261c9050, ECX=0x00000016, EDX=0x00000000
ESP=0x2b11f368, EBP=0x2b11f370, ESI=0x2c455000, EDI=0x2b11f3fc
EIP=0x2db53ee3, EFLAGS=0x00010216Top of Stack: (sp=0x2b11f368)
0x2b11f368: 261c9050 2b11f458 2b11f458 2db52bc4
0x2b11f378: 2b11f3d4 2c454fd8 00000080 2b9b7e08
0x2b11f388: 261c9050 261c9050 cccccccc cccccccc
0x2b11f398: cccccccc cccccccc cccccccc cccccccc
0x2b11f3a8: cccccccc cccccccc cccccccc cccccccc
0x2b11f3b8: cccccccc cccccccc cccccccc cccccccc
0x2b11f3c8: cccccccc cccccccc cccccccc 2c302c37
0x2b11f3d8: 79792c31 65766f6c 6e61572c 00697967 Instructions: (pc=0x2db53ee3)
0x2db53ed3: 00 00 00 75 14 c1 e9 02 83 e2 03 83 f9 08 72 29
0x2db53ee3: f3 a5 ff 24 95 f8 3f b5 2d 8b c7 ba 03 00 00 00
Stack: [0x2b0e0000,0x2b120000), sp=0x2b11f368, free space=252k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [UseDll.dll+0x3ee3]
C [UseDll.dll+0x2bc4]
j com.smsmanager.util.TbuserPassword.getCodingPwd(Ljava/lang/String;)Ljava/lang/String;+0
j com.smsmanager.util.TbuserPassword.EncodePassword(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+55
j com.smsmanager.mxl.form.SmsUserLoginForm.validate(Lorg/apache/struts/action/ActionMapping;Ljavax/servlet/http/HttpServletRequest;)Lorg/apache/struts/action/ActionErrors;+153
j org.apache.struts.action.RequestProcessor.processValidate(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Lorg/apache/struts/action/ActionForm;Lorg/apache/struts/action/ActionMapping;)Z+75
j org.apache.struts.action.RequestProcessor.process(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+157
j org.apache.struts.action.ActionServlet.process(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+19
j org.apache.struts.action.ActionServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+3
j javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+139
j javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+30
j weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run()Ljava/lang/Object;+43
j weblogic.servlet.internal.StubSecurityHelper.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/http/HttpServletRequest;Lweblogic/servlet/internal/ServletRequestImpl;Ljavax/servlet/ServletResponse;Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/Servlet;)Ljava/lang/Throwable;+110
j weblogic.servlet.internal.ServletStubImpl.execute(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V+295
j weblogic.servlet.internal.TailFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V+10
j weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+28
j com.smsmanager.filter.SetCharacterEncodingFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V+39
j weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+28
j weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;+146
J weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;
v ~RuntimeStub::alignment_frame_return Runtime1 stub
j weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;+18
j weblogic.servlet.internal.WebAppServletContext.securedExecute(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Z)V+277
j weblogic.servlet.internal.WebAppServletContext.execute(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V+270
j weblogic.servlet.internal.ServletRequestImpl.run()V+215
J weblogic.work.ExecuteThread.execute(Ljava/lang/Runnable;)V
J weblogic.work.ExecuteThread.run()V
v ~OSRAdapter
v ~StubRoutines::call_stub
V [jvm.dll+0x845a9]
V [jvm.dll+0xd9317]
V [jvm.dll+0x8447a]
V [jvm.dll+0x841d7]
V [jvm.dll+0x9ed69]
V [jvm.dll+0x109fe3]
V [jvm.dll+0x109fb1]
C [MSVCRT.dll+0x2b530]
C [kernel32.dll+0x26063]
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x2db53ee3, pid=1652, tid=2296
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode)
# Problematic frame:
# C [UseDll.dll+0x3ee3]
#--------------- T H R E A D ---------------Current thread (0x2b9b7e08): JavaThread "[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon [_thread_in_native, id=2296]siginfo: ExceptionCode=0xc0000005, reading address 0x2c455000Registers:
EAX=0x2c455058, EBX=0x261c9050, ECX=0x00000016, EDX=0x00000000
ESP=0x2b11f368, EBP=0x2b11f370, ESI=0x2c455000, EDI=0x2b11f3fc
EIP=0x2db53ee3, EFLAGS=0x00010216Top of Stack: (sp=0x2b11f368)
0x2b11f368: 261c9050 2b11f458 2b11f458 2db52bc4
0x2b11f378: 2b11f3d4 2c454fd8 00000080 2b9b7e08
0x2b11f388: 261c9050 261c9050 cccccccc cccccccc
0x2b11f398: cccccccc cccccccc cccccccc cccccccc
0x2b11f3a8: cccccccc cccccccc cccccccc cccccccc
0x2b11f3b8: cccccccc cccccccc cccccccc cccccccc
0x2b11f3c8: cccccccc cccccccc cccccccc 2c302c37
0x2b11f3d8: 79792c31 65766f6c 6e61572c 00697967 Instructions: (pc=0x2db53ee3)
0x2db53ed3: 00 00 00 75 14 c1 e9 02 83 e2 03 83 f9 08 72 29
0x2db53ee3: f3 a5 ff 24 95 f8 3f b5 2d 8b c7 ba 03 00 00 00
Stack: [0x2b0e0000,0x2b120000), sp=0x2b11f368, free space=252k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [UseDll.dll+0x3ee3]
C [UseDll.dll+0x2bc4]
j com.smsmanager.util.TbuserPassword.getCodingPwd(Ljava/lang/String;)Ljava/lang/String;+0
j com.smsmanager.util.TbuserPassword.EncodePassword(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;+55
j com.smsmanager.mxl.form.SmsUserLoginForm.validate(Lorg/apache/struts/action/ActionMapping;Ljavax/servlet/http/HttpServletRequest;)Lorg/apache/struts/action/ActionErrors;+153
j org.apache.struts.action.RequestProcessor.processValidate(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Lorg/apache/struts/action/ActionForm;Lorg/apache/struts/action/ActionMapping;)Z+75
j org.apache.struts.action.RequestProcessor.process(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+157
j org.apache.struts.action.ActionServlet.process(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+19
j org.apache.struts.action.ActionServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+3
j javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V+139
j javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+30
j weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run()Ljava/lang/Object;+43
j weblogic.servlet.internal.StubSecurityHelper.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/http/HttpServletRequest;Lweblogic/servlet/internal/ServletRequestImpl;Ljavax/servlet/ServletResponse;Ljavax/servlet/http/HttpServletResponse;Ljavax/servlet/Servlet;)Ljava/lang/Throwable;+110
j weblogic.servlet.internal.ServletStubImpl.execute(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V+295
j weblogic.servlet.internal.TailFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V+10
j weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+28
j com.smsmanager.filter.SetCharacterEncodingFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V+39
j weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V+28
j weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;+146
J weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;
v ~RuntimeStub::alignment_frame_return Runtime1 stub
j weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;+18
j weblogic.servlet.internal.WebAppServletContext.securedExecute(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Z)V+277
j weblogic.servlet.internal.WebAppServletContext.execute(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V+270
j weblogic.servlet.internal.ServletRequestImpl.run()V+215
J weblogic.work.ExecuteThread.execute(Ljava/lang/Runnable;)V
J weblogic.work.ExecuteThread.run()V
v ~OSRAdapter
v ~StubRoutines::call_stub
V [jvm.dll+0x845a9]
V [jvm.dll+0xd9317]
V [jvm.dll+0x8447a]
V [jvm.dll+0x841d7]
V [jvm.dll+0x9ed69]
V [jvm.dll+0x109fe3]
V [jvm.dll+0x109fb1]
C [MSVCRT.dll+0x2b530]
C [kernel32.dll+0x26063]
解决方案 »
- Java怎么调整字符间距
- 关于inputstream 和 outputstream
- 问些基础问题,也希望多知道些面试常问的概念问题,谢谢。
- 子类的构造函数用this 或者super,为什么用this不对啊
- 一个JAVA问题,在很多论坛上问了,都得不到一个本质的答案,希望这里的高手能有一个好的答复
- 请问如何画一个矩形,鼠标可以脱拽它?谢谢
- [共享]通用对象是否相等的比较
- 这个jbuilder 错误,怎么解决?
- 我该学习哪一种开发java的开发工具
- 求助一个C#用AES加密,java解密的问题
- 高分 求java写的 高斯模糊处理图片的例子(不能掉用现有的API) 要有算法和代码 3Q 解决再送50分
- Prohibited package name: java.awt 怎么解决
难道是系统漏洞的问题啊