Проблемы с добавлением приложения GWT в iFrame

У меня есть GWT приложение, и я хочу встроить его URL в другую веб-страницу через iFrame:

<iframe src="http://127.0.0.1:8888/myProject.html?gwt.codesvr=127.0.0.1:9997"/>

Но я получаю ошибки.

Если бы я просмотрел его в Firefox:

Permission denied to access property 'href' (из консоли Firebug)

Если бы я просмотрел его в Chrome:

Появится диалоговое окно со словами: Plugin failed to connect to Development Mode server at 127.0.0.1:9997

Я много исследовал, но все было напрасно.

Использование режима разработки GWT.

Любая помощь будет оценена.

2 ответа

Решение

Хорошо, если кто-то когда-нибудь попадет сюда, потому что у него та же проблема и он хочет знать, что случилось, я просто подведу итоги того, что у нас есть.

Я не уверен, но думаю, что проблема была в том, что интернет-браузеры не позволяют сайтам получать доступ url которые не находятся в домене главной страницы (если бы это было возможно, случились бы очень плохие вещи), если вы не позволите им сделать это.

Это называется междоменной политикой доступа, поэтому есть 2 варианта для ее обработки.

  1. Самый простой - gwt и внешний html должны иметь один и тот же хост.
  2. Пусть плагин gwt запускается из внешнего HTML-контекста, он описан здесь и здесь, но по какой-то причине он не работал. мы до сих пор не знаем почему.

Мой обходной путь (Ubuntu, GWT 2.5.1) должен был заменить:

__gwt_HostedModePlugin -> parent.__gwt_HostedModePlugin
window.top -> window.parent

в hosted.html

Другие вопросы по тегам