Запуск приложения GWT (включая Апплеты) в IFRAME из ASP.NET 3,5 приложения?

Мы смотрим на интеграцию полноценного GWT (Google Web Toolkit 2.0) приложение с существующим ASP.NET 3,5 приложения. Моя первая реакция пищеварительного тракта состоит в том, что это - ужасная frankenstein идея. Однако клиент настоял, чтобы мы использовали это приложение, разработанное третьим лицом.

Я не имею ПОЧТИ НИКАКОГО КОНТРОЛЯ разработкой приложения GWT.

Моя первая мысль состоит в том, чтобы на самом деле попытаться встроить это в iFrame. Поскольку GWT работает под Tomcat/Джакартой, он размещается на другом сервере из приложения.NET, таким образом, iFrame src будет к URL на другой машине.

Я должен использовать нашу собственную схему авторизации ASP.NET для ограничения доступа к встроенному приложению GWT. Приложение GWT также использует, встроил апплеты Java, которые, кажется, не работают правильно теперь в iframe. Приложение GWT выполняет вызовы к серверу бэкэнда (использующий GWT-RPC?).

Какие-либо основные проблемы с этим подходом, который кто-либо видит? GWT будет работать над iframe, в то время как размещено на другой машине?

Примечание: ПРОСТО ДОБАВЛЕНИЕ DIV С ТЕМ ЖЕ ИМЕНЕМ НЕ РАБОТАЕТ НА ЭТО!

7
задан Jay Stevens 19 April 2010 в 13:09
поделиться

2 ответа

Чтобы объяснить то, что сказал Тони, GWT может существовать на любой странице. На самом низком уровне GWT перехватывает div по его идентификатору или элемент body , как его RootPanel , и добавляет к нему виджеты оттуда.

Просто добавьте div на свою страницу ASP, например

, и в коде GWT начните с RootPanel root = RootPanel.get ("gwt- корень ") . Затем вы можете начать добавлять виджеты на эту панель для создания части GWT вашей страницы.

Вам также нужно будет ввести свой сгенерированный GWT код с тегом script , например так:

<script type="text/javascript" src="gwt-app-name/gwt-app-name.nocache.js">

Кроме того, при желании GWT может взаимодействовать с остальной частью страницы, используя обычный JavaScript. с использованием JSNI .

6
ответ дан 7 December 2019 в 07:44
поделиться

Вам не нужен IFRAME. Напишите ваше приложение так, чтобы главная панель размещалась внутри div с определенным id. Если ваш ASP.net может предоставить div с тем же id, то все, что вам нужно сделать, это включить сгенерированные файлы JavaScript (+ некоторые таблицы стилей), и ваше приложение будет отображаться внутри div.

1
ответ дан 7 December 2019 в 07:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: