Может ли подписанный Java-апплет / Web Start манипулировать контентом в межсайтовом IFRAME? - PullRequest
2 голосов
/ 25 января 2010

Возможно ли, чтобы подписанный Java-апплет или приложение Web Start могли писать в DOM IFRAME в другом домене?

Позволяет ли тот факт, что они являются подписанным апплетом / javaws, игнорировать стандартную межбраузерную безопасность браузеров?

Если это работает, насколько хорошо оно поддерживается во всех основных браузерах?

Спасибо!

EDIT

Моя мотивация заключается в том, чтобы добавить подобный плагину инструмент для браузера на сторонние веб-сайты, которые я не контролирую. Я вовсе не обязан использовать Java - любые идеи и предложения приветствуются.

Ответы [ 4 ]

1 голос
/ 26 января 2010

Java - это не JavaScript, поэтому апплеты не имеют дела с транспортом IFrame. Запуск апплета в JVM (например, Sun), JavaScript в браузере JSEngine (Gecko)

Итак, забудьте о апплетах. Если вы думаете о плагине для браузера, посмотрите на FireBug, если вы хотите использовать перекрестные скрипты, попробуйте транспорт тегов javascript.

1 голос
/ 30 марта 2010

Нет, Java, даже подписанные апплеты Java, не дают возможностей JavaScript.

0 голосов
/ 08 апреля 2010

Кстати, Java-апплеты могут общаться с JavaScript и наоборот.

Выезд http://www.rgagnon.com/howto.html

JAVA APPLET:

import java.applet.*;
import java.net.*;

public class InJava4 extends Applet{
  public void init(){
    String msg = "Hello from Java (using javascript alert)";
    try {
      getAppletContext().showDocument
        (new URL("javascript:doAlert(\"" + msg +"\")"));
      }
    catch (MalformedURLException me) { }
  }
}

Javascript и HTML

<HTML><HEAD></HEAD><BODY>
<SCRIPT>
function doAlert(s) {
   alert(s);
   }

</SCRIPT>
<APPLET CODE="InJava4.class"
        NAME="myApplet"  MAYSCRIPT
        HEIGHT=10 WIDTH=10>
</APPLET>
</BODY>
</HTML>
0 голосов
/ 25 января 2010

Апплет манипулирования DOM осуществляется через LiveConnect, поэтому я предполагаю, что безопасность JavaScript в браузере должна быть на месте и препятствовать вам. Вы могли бы, конечно, взломать это. Я не знаю, как это сделать.

Как всегда, я предлагаю не подписывать код, если вы действительно , действительно не знаете, что делаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...