Java查看器在JRE 1.7.0.21更新后无法工作
问题描述:
我正在使用java查看器(applet)在我的.NET应用程序中查看图像。Java查看器在JRE 1.7.0.21更新后无法工作
它一直工作到最新的JRE更新。 每一个客户端更新的Java抛出下面的错误(在所有浏览器):
下面是详细信息:
Java Plug-in 10.21.2.11 Using JRE version 1.7.0_21-b11 Java
HotSpot(TM) Client VM User home directory = C:\Documents and
Settings\Administrator
---------------------------------------------------- c: clear console window f: finalize objects on finalization queue g:
garbage collect h: display this help message l: dump classloader
list m: print memory usage o: trigger logging q: hide console r:
reload policy configuration s: dump system and deployment properties
t: dump thread list v: dump thread stack x: clear classloader
cache 0-5: set trace level to <n>
----------------------------------------------------
Match: beginTraversal Match: digest selected JREDesc: JREDesc[version 1.4+, heap=-1--1, args=-Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true, href=http://java.sun.com/products/autodl/j2se, sel=false, null, null],
JREInfo: JREInfo for index 0:
platform is: 1.7
product is: 1.7.0_21
location is: http://java.sun.com/products/autodl/j2se
path is: C:\Program Files\Java\jre7\bin\javaw.exe
args is:
native platform is: Windows, x86 [ x86, 32bit ]
JavaFX runtime is: JavaFX 2.2.21 found at C:\Program Files\Java\jre7\
enabled is: true
registered is: true
system is: true
Match: ignoring maxHeap: -1
Match: ignoring InitHeap: -1
Match: digesting vmargs: -Xmx512m -Dsun.security.ssl.allowUnsafeRenegotiation=true
Match: digested vmargs: [JVMParameters: isSecure: false, args: -Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: selecting maxHeap(2): 536870912
Match: JVM args after accumulation: [JVMParameters: isSecure: false, args:
-Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: digest LaunchDesc: null
Match: digest properties: []
Match: JVM args: [JVMParameters: isSecure: false, args: -Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: endTraversal ..
Match: JVM args final: -Xmx512m -Dsun.security.ssl.allowUnsafeRenegotiation=true
Match: Running JREInfo Version match: 1.7.0.21 == 1.7.0.21
Match: Running JVM args match the secure subset: have:<-Xmx512m> satisfy want:<-Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true>
Match: beginTraversal Match: digest selected JREDesc: JREDesc[version 1.4+, heap=-1--1, args=-Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true, href=http://java.sun.com/products/autodl/j2se, sel=false, null, null],
JREInfo: JREInfo for index 0:
platform is: 1.7
product is: 1.7.0_21
location is: http://java.sun.com/products/autodl/j2se
path is: C:\Program Files\Java\jre7\bin\javaw.exe
args is:
native platform is: Windows, x86 [ x86, 32bit ]
JavaFX runtime is: JavaFX 2.2.21 found at C:\Program Files\Java\jre7\
enabled is: true
registered is: true
system is: true
Match: ignoring maxHeap: -1
Match: ignoring InitHeap: -1
Match: digesting vmargs: -Xmx512m -Dsun.security.ssl.allowUnsafeRenegotiation=true
Match: digested vmargs: [JVMParameters: isSecure: false, args: -Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: selecting maxHeap(2): 536870912
Match: JVM args after accumulation: [JVMParameters: isSecure: false, args:
-Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: digest LaunchDesc: null
Match: digest properties: []
Match: JVM args: [JVMParameters: isSecure: false, args: -Dsun.security.ssl.allowUnsafeRenegotiation=true]
Match: endTraversal ..
Match: JVM args final: -Xmx512m -Dsun.security.ssl.allowUnsafeRenegotiation=true
Match: Running JREInfo Version match: 1.7.0.21 == 1.7.0.21
Match: Running JVM args match the secure subset: have:<-Xmx512m> satisfy want:<-Xmx512m
-Dsun.security.ssl.allowUnsafeRenegotiation=true>
由于jatin建议我检查了静态块的初始化文件夹它看起来像问题在这里:
static {
// This gets rid of exception for not using native acceleration
System.setProperty("com.sun.media.jai.disableMediaLib", "true");
System.setProperty("sun.security.ssl.allowUnsafeRenegotiation", "true");
}
我评论这行,现在java不thr由于erros,但小程序不能正常工作(它不应该加载图像,因为它应该)...
因为我没有开发这个应用程序,我将不胜感激任何技巧,如何保持此功能,并纠正抛出的异常经过新的JRE 1.7更新21.
请一定帮忙!!
答
尝试使用来自可信认证中心的证书签署您的小程序。看here更多信息:
在2013年4月与Java SE 7中更新21开始,所有的Java Applet和 Web Start应用程序应该使用受信任的证书签名。
答
转到控制面板,打开Java控制面板,转到安全选项卡并降低它。
完成。
您需要提供堆栈跟踪。 – 2013-04-22 08:57:40
我上次更新了Java,我的应用程序搞砸了。重要的道德:始终使用最后建立的稳定。这意味着,在生产中使用Java 6。 – Jatin 2013-04-22 09:01:59
问题是,客户端更新了Java ...我通常禁用自动更新,但一些IT人员往往会改变它....现在我拧了。 – no9 2013-04-22 09:07:46