Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > серверная сторона для AJAX


Автор: DEER 16.7.2007, 12:13
Добрый день.
что то я в ступор зашел.
Делаю анагол вот такой штуки http://www.opensubtitles.org/en те поиск по нескольким символам и чтобы строился выпадающий список.

Сейчас сперва надо написать серверную часть этой фигни. 
Вот сдесь я подвис.
Вот что для этого надо использовать? Веб сервис? Сервлет? Что то иное?
Вообще скачал много умных штук, которые советовались для разработки ajax в java типа axis, gwt, struts 2, 
Axis это как я понял для веб-сервисов
gwt - имхо слишком ьяжелая штука., а мне надо просто добавить функционал к проекту и много переделок не приветствуется.
В struts нашел только теги для этого, а это представление а не управление.

Как потом клиесткую часть реализовать я знаю и с этим проблем не должно быть. 

Автор: AntonSaburov 16.7.2007, 12:55
AJAX - это же асинхронный запрос. Причем это запрос может быть в любом виде - просто HTTP запрос. С параметрами или без оных. А значит надо сформироать URL и примапить к нему servlet.

Автор: DEER 16.7.2007, 13:03
это то понятно (про запросы). а как сервлетом вернуть массив элементов не понятно.
Я как понимаю надо поставить нужный content type (какой?) и в OutputStream респонса записать строки - обернутые в xml элементы массива. Так?

Автор: AntonSaburov 16.7.2007, 16:25
Ну поставь text - ты же получаешь обратно обычный тектовый поток. Наверно его проще будет парсить если что. Хотя кто-то любит XML - его вообщем тоже можно удобно парсить в JavaScript.

Автор: DEER 16.7.2007, 16:37
Спасибо.
Значит правильно думал. Осталось сделать  smile

Автор: check 16.7.2007, 19:48
Кроме указания content-type желательно ещё отключать кеширование.
Я обычно такие заголовки посылаю
Код

response.setHeader("Content-type", "text/xml; charset=utf-8");
response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
response.setHeader("Cache-Control", "post-check=0, pre-check=0\", false");

content-type естественно может быть и text/plain и text/html.


Автор: MisterCleric 17.7.2007, 09:28
А есть еще удобный для JavaScript формат JSON и есть такакая либа http://oss.metaparadigm.com/jsonrpc/. Почитай, очень удобно и быстро делать связку Java->JavaScript

Автор: DEER 17.7.2007, 09:49
сцылка не работает. но спасибо за наводку, в струтсе втором есть тоже написано что надо юзать методы toJSONString() для формирования отклика.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)