标签: mixed-code

为什么Java告诉我我的applet包含有符号和无符号代码?

我的签名Java applet在Java更新19之前一直运行正常.现在Java Update 19上的一些但不是所有用户都报告了一条java安全消息,指出我们的applet包含有符号和无符号代码.

创建applet的过程如下:

  1. 在Netbeans IDE中清理并构建applet项目.
  2. 在WinRAR中打开Applet jar文件,并将所需的mysql JDBC驱动程序.class文件添加到jar文件中.
  3. 签署applet jar文件.

有人可以告诉我如何确定签署的代码以及我们的applet中没有签署的代码?有没有更好的方法将mysql JDBC驱动程序jar文件包含在我们的applet中,而不是将jar文件内容复制到我们的applet jar文件中?

谢谢

java security applet mixed-code

13
推荐指数
2
解决办法
1万
查看次数

更新到JRE 7u21后,Java applet停止工作

一旦JRE更新到7u21,我的Java applet就停止了工作.

简短的摘要:

  • 我得到的例外是:netscape.javascript.JSException和
    java.lang.NoClassDefFoundError.小程序工作正常,直到JRE 7u21.

  • applet使用Oracle的DeployJava.js嵌入到网页中.

  • 小程序已签名,它使用LiveConnect来触发事件,它通过JNI访问USB和串行端口,它使用来自多个JAR文件的代码.

  • 所有测试的桌面浏览器(Firefox,Chrome,IE8/9和Mac上的Safari)都会出现故障.

细节:

  • 我有一个java applet,允许我的网站与USB设备通信.

  • 小程序在过去一年中运作良好.

  • 一旦JRE7更新21发布 - applet就停止了工作.

  • applet使用Oracle的DeployJava.js库托管在网页(ASP.NET)中.

  • 它使用LiveConnect将事件提升回我的javascript代码.

我在JRE 7u21上遇到的第一个问题是第一次尝试通过LiveConnect引发事件时出现异常:

netscape.javascript.JSException: JavaScript error while calling "_notify"
at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
at sun.plugin2.main.client.MessagePassingJSObject.call(Unknown Source)
at <myapplet>.fireJavascriptEvent(Unknown Source)
at <myapplet>$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.asec.easypark.applets.HomeloadingApplet.start(Unknown Source)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.start(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

为了缓解这个问题,我在applet的ant脚本中的'manifest'部分添加了以下行:

attribute name="Trusted-Library" value="true" 
Run Code Online (Sandbox Code Playgroud)

我使用JDK 7u21构建了applet,它似乎有所帮助:

之后我开始收到另一个错误 - 所以我相信这个错误已经解决了,但它可能导致了下一个问题.

第二个问题是:applet从几个JAR文件调用代码.在第一次调用另一个JAR文件(不是applet的文件)中的代码失败时出现以下异常:

**java.lang.NoClassDefFoundError**: com/codeminders/hidapi/HIDManager
    at <PackageInSecondJar>.communication.HIDTransmitter.open(Unknown Source)
    at <PackageInSecondJar>.communication.HIDTransmitterSearcher.find(Unknown Source)
    at <PackageInSecondJar>.communication.CompositeTransmitterSearcher.find(Unknown Source)
    at <PackageInAppletJar>.communication.AppletCommunicationBroker.setupDeviceProxy(Unknown Source) …
Run Code Online (Sandbox Code Playgroud)

java security applet mixed-code

13
推荐指数
1
解决办法
9911
查看次数

Java弹出窗口说应用程序包含无符号和签名代码

我正在使用运行Java 1.7.0_21的Mac 10.7.我正在尝试运行已签名的Java applet应用程序,并且在应用程序结束时,我得到一个混合模式安全弹出窗口"阻止可能不安全的组件被运行?".我正在使用的所有罐子都签了名.

我可以在运行Java 6的Mac 10.6上运行相同的applet应用程序,但我没有得到混合模式警告.我也可以在Windows上运行应用程序而不会出现混合模式警告.

当我的所有罐子都签名后,为什么我会一直收到这个错误?

我用谷歌搜索混合模式警告,发现此链接.

http://docs.oracle.com/javase/6/docs/technotes/guides/jweb/mixed_code.html#manifest

看完这个链接后,我有点困惑.根据此链接,我看起来需要在清单文件中提到"Trusted-Only"或"Trusted-Library"属性.我查看了我的清单文件,他们没有这些属性,所以我应该把它们放进去,或者只是罐子签名应该已经足够了.

有人可以请帮助我理解为什么即使一切都签名我都会收到此错误?

java security warnings mode mixed-code

7
推荐指数
1
解决办法
2万
查看次数

帮助理解jstack输出

我有一个桌面Java/Swing应用程序,它通过Java Webstart部署(客户端在XP上使用Java 6u20).我收到了申请暂停用户的间歇性报告.我设法在挂起期间登录到这样的系统,发现没有绘制UI(就像EDT被阻止一样).

我用jstack列出了线程; 我没有看到任何关于输出的死锁的提及,因为我对jstack很新,​​我不确定我还应该寻找什么.

我必须编辑堆栈跟踪以使其适合stackoverflow限制,希望没有遗漏任何重要意义.

谢谢,
菲尔

Full thread dump Java HotSpot(TM) Client VM (16.3-b01 mixed mode, sharing):

"AWT-EventQueue-0" prio=6 tid=0x03e3f000 nid=0xe44 in Object.wait() [0x0516f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at java.awt.EventQueue.getNextEvent(Unknown Source)
    - locked <0x1d4b91d8> (a java.awt.EventQueue)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    <SNIP>

   Locked ownable synchronizers:
    - None

"ServerThread" prio=6 tid=0x058f7c00 nid=0xa08 waiting for monitor entry [0x055be000]
   java.lang.Thread.State: BLOCKED (on object monitor)
    at com.sun.deploy.security.CPCallbackHandler$ParentCallback.check(Unknown Source)
    - waiting to lock <0x1d485f80> (a com.sun.deploy.security.CPCallbackHandler$ParentCallback)
    at com.sun.deploy.security.CPCallbackHandler$ParentCallback.access$1400(Unknown Source) …
Run Code Online (Sandbox Code Playgroud)

java locking jstack mixed-code

6
推荐指数
1
解决办法
9632
查看次数

混合C/C++源代码:在C代码中获取sizeof(C++ struct)

在这个项目中,我需要从C文件中获取头文件中结构的大小.

我不能在C文件中包含头文件,因为struct包含不能用C编译的类.

有任何想法吗?

c c++ compiler-errors compilation mixed-code

2
推荐指数
2
解决办法
309
查看次数

为什么突然在我们的applet上显示这个java安全警告

客户在我们开发的网站上的一个古老的Java组件上获得了此Java安全警告:

Java发现了可能表明安全问题的应用程序组件.

java applet是一个很小的小程序(它只是一个能够编写freetext的下拉列表).这是避免此安全警告的简单方法吗?

applet是我们很久以前开发的,已经在我们的Web解决方案中运行多年了.

java security applet mixed-code

0
推荐指数
1
解决办法
2356
查看次数