Часто, при разработке веб-приложений на Spring возникает ситуация, когда приходится объеденять сразу несколько действий в один контроллер. Для этого Бог и создал MultiActionController. Однако, Бог не предусмотрел прямой возможности обрабатывать одним таким контроллером сразу несколько форм. Вот как раз о вмешательстве простого человека в дела Божьи и пойдет речь в этой статье. Continue Reading ▶
Google API или что скрывается за кулисами
Недавно, работая над одним своим проектом мне пришлось решать задачу по удаленному взаимодействию с различными популярными веб-ресурсами. Из их числа были такие сайты как Youtube, Gmail, GoogleReader, Flickr и другие не менее известные. Первая проблема, с которой мне пришлось столкнуться это то, что все ресурсы поддерживают разные протоколы, из их числа стандартная тройка: REST, XML-RPC, SOAP. Вторая проблема, а скорее просто настоящее занудство – это написание клиентов к каждому из этих сайтов. Удручающее мероприятие, не правда ли? И если на архитектурном уровне первая проблема решается парой паттернов типа Adapter и Factory, то со второй все обстоит гораздо менее приятно.В данном случае, нелегкую судьбину девелопера поможет спасти замечательный Google API. Честно сказать, до этого момента у меня было достаточно скептическое и поверхностное мнение о Google API. В большей степени потому, что попросту не сталкивался с подобными задачи, ну и не проявлял лишний интерес. Continue Reading ▶
Разработка веб-приложений на Spring. Часть 3 (Реализация)
Разобравшись со всеми навалившимися делами и задачами, спешу опубликовать 3-ю завершающую статью из серии “Разработка веб-приложений на Spring”, которая полностью посвящается непосредственно реализации поставленной задачи в предыдущих статьях: Разработка веб-приложений на Spring. Часть 1 (Проектирование), Разработка веб-приложений на Spring. Часть 1 (Конфигурирование).
В этой статье нам предстоит сделать:
- Сервис и DAO для работы с данными
- Контроллер обработки формы
- Валидатор формы
- JSP страницу
Одним словом – ерунда осталась
Разработка веб-приложений на Spring. Часть 2 (Конфигурация)
В предыдущей статье мы занимались проектированием будущего приложения на Spring. Определили его цели, структуру, а также рассмотрели основные компоненты. В качестве примера используем всё тот же AllOfRss.com.
В данной статье я рассмотрю конфигурацию нашего приложения. В процессе будут созданы все необходимые конфигурационные файлы для его полноценного функционирования.
Для начала откроем Eclipse и создадим новый проект (File->New->Web Project), также рекомендую установить плагин для более комфортной работы с фреймворком Spring – Spring IDE Plugin. В процессе создания проекта, Eclipse попросит указать название вашей “Web root folder” (по умолчанию стоит – WebRoot), я обычно указываю – web, а также J2EE Specification Level, отметьте – Java EE 5.0 (если, конечно, вы используете Java 5). Остальное пусть будет без изменений.
Веб дескриптор
Как и в любом другом веб-приложении на Java всё начинается с конфигурации web.xml (web(WebRoot)/WEB-INF/web.xml).
Для начала установим путь к осноному конфигу Spring.
web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/allofrss-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
Сравнительно с другими веб-приложениям на Java, приложение на Spring не отличается особой оригинальностью поскольку здесь тоже всё работает через сервлеты, правда сервлет здесь будет всего один. DispatcherServlet главный сервлет в приложении на Spring. Он выполняет роль “гейтвея” входящих запросов, перенаправляя вызовы “внутрь” системы (в науке это называется паттерном Front Controller).
Exception Conference #07
Да, да, именно Conference, а не Seminar!
15 марта 2008 года – состоится седьмая всеукраинская конференция по динамическим языкам программирования – Exception Conference #07.
В данный момент ищутся докладчики. Предлагаемые темы:
- GUI
- Web
- Сетевые приложения
- Динамические языки в разработке игр
- Системы контроля версий
- Базы данных
- Рефакторинг, TDD, XP, паттерны, ООП
- ORM
- Метапрограммирование
- Параллельное программирование
- Администрирование, автоматизация бизнеса
- VoIP
Направляйте свои предложения организатору сего действа Ивану Пирогу: ivan.pirog@gmail.com.
Подробнее читайте на официальном сайте конференции: http://exception.org.ua
Leave the first comment ▶