DWR (Java) - DWR (Java)

Прямое веб-удаленное взаимодействие
Оригинальный автор (ы)Джо Уокер
Разработчики)Дэвид Марджинян / Фонд Додзё
изначальный выпуск29 августа 2005 г.; 15 лет назад (2005-08-29)
Стабильный выпуск
3.0.2 / 11 декабря 2016 г.; 3 года назад (2016-12-11)
Репозиторий Отредактируйте это в Викиданных
Написано вЯва и JavaScript
Операционная системаКроссплатформенность
Размер1.08 МБ (в архиве)
ТипАякс технологии
ЛицензияЛицензия Apache 2.0
Интернет сайтпрямая.org Отредактируйте это в Викиданных

DWR, или же Прямое веб-удаленное взаимодействие, это Ява Открытый исходный код библиотека, которая помогает разработчикам писать веб-сайты, включающие Аякс технологии.[1] Он позволяет коду в веб-браузере использовать функции Java, запущенные на веб-сервере, как если бы эти функции находились внутри браузера. Проект DWR был начат Джо Уокером в 2004 году, версия 1.0 выпущена 29 августа 2005 года.

Заявление

  • Код для разрешения JavaScript для получения данных из сервлет веб-сервер на основе принципов Ajax.
  • Библиотека JavaScript, которая упрощает для разработчика веб-сайта динамическое обновление веб-страницы с использованием полученных данных.

DWR использует новый подход к Ajax, динамически генерируя код JavaScript на основе классов Java.[2] Таким образом, веб-разработчик может использовать код Java из JavaScript, как если бы он был локальным для веб-браузера; тогда как на самом деле код Java выполняется на веб-сервере и имеет полный доступ к ресурсам веб-сервера. По соображениям безопасности веб-разработчик должен точно указать, какие классы Java можно безопасно экспортировать (что часто называется web.xml или же dwr.xml).

Этот метод удаленного взаимодействия функций с Java на JavaScript дает пользователям DWR ощущение, что RPC такие механизмы, как RMI или же МЫЛО, с тем преимуществом, что он работает через Интернет, не требуя подключаемых модулей веб-браузера.

DWR не считает важным протокол веб-браузера / веб-сервера и предпочитает, чтобы интерфейс программиста был естественным. Самая большая проблема здесь - совместить асинхронную природу Ajax с синхронной природой обычных вызовов методов Java.

В асинхронной модели данные результатов доступны только через некоторое время после первоначального вызова. DWR решает эту проблему, позволяя веб-разработчику указать функцию, которая будет вызываться при возврате данных, с помощью дополнительного параметра метода. Этот дополнительный метод называется Обратный вызов. Значение, возвращаемое функцией java, будет передано методу обратного вызова.

Вот пример обратного вызова:

 MJavaClassOnJs.getListProducts(selectedCategory,{  Перезвоните:функция(возвращенный список){    dwr.утилита.addOptions(myComboId,возвращенный список,"идантификационный номер продукта","наименование товара")  } })

Обратный вызов - это функция внутри JSON объект, переданный в качестве дополнительного параметра удаленной функции.

В версии 2.0 DWR поддерживает Комета (также называемая «Обратный Ajax»)[2] где Java-код, запущенный на сервере, может намеренно отправлять выделенный JavaScript в браузер.

Рекомендации

  1. ^ Карнейро-младший, Гвоздика (20 июня 2005 г.). «AJAX стало проще с DWR». JavaWorld. Получено 2020-08-06.
  2. ^ а б Обзор DWR, получено 2008-06-24

Библиография

внешняя ссылка