В IE9 и IE9 Platform Preview я больше не могу вызывать метод Javascript из моего Java-апплета - PullRequest
1 голос
/ 08 ноября 2010

В предыдущих версиях IE и в Firefox я мог вызывать methodFoo в JavaScript из моего Java-апплета, работающего на той же странице.В IE9 это больше не работает.Есть какой-то дополнительный шаг или другой способ сделать это, который будет работать для IE9?

Мой Java-апплет содержит

import netscape.javascript.JSObject;
...
private transient JSObject jso;
...
public void init() {
    ...
    jso = JSObject.getWindow(this);
    ... }

public void CalledFromSecondaryThread(){
    ...
    jso.call("methodFoo", object_to_pass);
    ... }

Моя HTML-страница содержит

...
<object style="height: 1px;width: 650px;" classid = "clsid:CAFEEFAC-0016-0000-0011-ABCDEFFEDCBA" codebase = "http://java.sun.com/update/1.6.0/jinstall-6u11-windows-i586.cab#Version=6,0,0,11" id="AppletControl">
  <param name="java_arguments" value="-Xmx256m" />
  <param name = "CODE" value = "com.namespace.Applet.class" />
  <param name = "archive" value = "./lib/applet.jar" />
  <param name = "type" value = "application/x-java-applet;version=1.6" />
  <param name = "scriptable" value="true" />
  <param name = "mayscript" value="true" />
</object>
...
<script type="text/JavaScript" src="js/script.js"></script>
...

и script.js содержит

function methodFoo(object_to_pass){     
    //doStuff
}

Исключение, полученное от jso.call, равно

netscape.javascript.JSException: No such method "methodFoo" on JavaScript object

1 Ответ

1 голос
/ 24 марта 2011

Это ошибка 620646 в бета-версии IE 9, исправленная в RC и более новых версиях IE9 Сообщение об ошибке в Microsoft

...