Скрыть объявление
Более 45000 материалов для скачивания в нашем приватном разделе. Не пропусти, возможно данную складчину уже выкупили и выложили для ознакомления.
Скрыть объявление
Гость отличная новость! Мы открыли доступ к ранее скрытому контенту.

Вам доступно более 44 000 видео уроков, книг и программ без VIP статуса. Более подробно ЗДЕСЬ.

Открыто Веб-сервисы. SOA-based архитектура

Тема в разделе "Программирование", создана пользователем InfoNews, 2 ноя 2014.

0/5, Голосов: 0

Этап:
Набор участников
Цена:
10500.00 руб.
Участников:
3 из 35
Организатор:
требуется
8%
Расчетный взнос:
330 руб.
  • Участники покупки:
    1. felina, 2. Polkilo, 3. Madis;
  1. InfoNews

    InfoNews Модератор

    Сообщения:
    17.815
    Симпатии:
    19.509
    Описание:
    Для участников, имеющих опыт программирования на Java.
    Разработка полнофункциональнго многомодульного Maven проекта: web-приложения, почтового сервиса и вспомогательных модулей с использованием Веб и REST сервисов (JAX-WS, JAX-RS), jQuery, Execution Framework, JavaMail, библиотек Apache Commons, AKKA и персистентностью данных c динамическим конфигурирование модулей по http и JMX..




      • На тренинге подробно разбирается написание с нуля полнофункциональнго многомодульного Maven проекта: web-приложения, почтового сервиса и вспомогательных модулей с использованием Веб и REST сервисов (JAX-WS, JAX-RS), jQuery, Execution Framework, JavaMail, библиотек Apache Commons, AKKA и персистентностью данных c динамическим конфигурирование модулей по http и JMX.
      • Основное внимание будет уделяться способам решения многочисленных проблем разработки а также структурному (красивому и надежному) java кодированию и модульности приложения.
      • После каждого занятия предлагается домашнего задания, которое разбирается в начале следующего урока.
    Для построения приложения будут использоваться инструменты промышленной java разработки:



      • Java 7
      • Объектно-реляционная СУБД PostgreSQL
      • Инструмент постороения Maven
      • Система контроля версий Git
      • Библиотека JavaScript jQuery
      • Интеграционные и модульные тесты JUnit 4
      • Система логгирования Log4j и SLF4J
      • Инструмент тестирования веб-сервисов SoapUI
      • Средство отладки веб-приложений firebug
    Спойлер: План вебинара
    Занятие 1
    Вводная часть

    Спойлер: План вебинара


      • Основные характеристики разрабатываемого на курсе приложения..
      • Платформа Java. Преимущества и недостатки. Java 8.
      • Сравнение с Python, Scala. Элементы и библиотеки ФП в Java

    Maven


    Создание проекта

    Занятие 2
    Создание/тестирование формы модуля Web


    Веб-сервисы



      • Веб-сервисы. SOAP. Преимущества/недостатки веб-сервисов. Расширения.
      • Создание API и реализации веб-сервиса MailService.
      • Деплой и тестирование через SoapUI.


    Доработка веб-сервиса. Кастомизация WSDL.

    Домашнее задание
    1. Модифицировать Addressee для вывода в формате soa-ws2\mail-api\src\test\resources\Addressee.xml
    2. Сделать схему Addressee.xsd, положить рядом с Addressee.xml
    3. На основе JaxbSingleParser написать JUnit4 тест для проверки маршалинга/демаршалинга/валидации Addressee:
    2.1 Маршализовать new Addressee("Name", "name@mail.ru") и сравнить с Addressee.xml
    2.2 Демаршализовать Addressee.xml и сравнить с new Addressee("Name", "name@mail.ru")
    2.3 Провалидировать Addressee.xml
    2.4 Убедится в SAXParseException при валидации InvalidAddressee.xml

    Для чтения файлов использовать IOUtils.toString библиотеки commons-io%commons-io%2.4

    4. Включить схему внутрь wsdl и опубликовать mailService на основе кастомизированной схемы.

    Занятие 3
    Разбор Домашнего Задания.


    Клиент веб-сервиса.



      • Публикация веб сервиса из main(). Дабавлние wsdl
      • Выделение из wsdl общей части
      • Создание клиента почтового сервиса.
      • Тестирование с помощью JUnit 4
    JAX-WS Handlers.



      • Логгирование SOAP на стороне клиента.
      • Логгирование и статистика трафика опубликованного веб-сервиса.
    Домашнее задание
    1. Добавить в имплементацию сервиса логин/пароль.
    2. Добавить в интеграционные тесты фазу pre-integration-test (запуска сервиса) и post-integration-test (shutdown).

    Занятие 4
    Basic Authorization.


    Конфигурирование.

    Отправка почты.



      • Подключение клиента к модулю Web.
      • Реализация отправки письма.
    Домашнее задание
    Реализовать аутентификацию через Soap Handler.

    Занятие 5
    Разбор ДЗ.




      • wsimport binding.
      • SoapHandler аутентификация.
    Добавляем файлы вложения. Mail-Service.



      • Приатачиваем вложения к почте
      • Генерация обновленного WSDL через wsgen
      • Тестирование вложений через SoapUi.
    Загрузка файлов.



      • Стандарт MIME. Обрабатываем вложения на форме: commons-fileupload
      • Загрузка файла вместе в полями формы.
      • Вызов клиента с вложениями.
    Домашнее задание
    1. Дополнить интеграционные тесты проверкой на неавторизованный доступ.
    2. Попробовать задать код ответа сервера в SoapServerSecurityHandler через MessageContext.HTTP_RESPONSE_CODE.
    3. Пофиксить проблему отправки почты с пустыми subject и body.

    Занятие 6
    Персистентность.


    REST веб сервис.

    Домашнее задание
    1. Дополнить REST сервис авторизацией (логин/ пароль те же, что и у веб сервиса).
    2. Сделать JUnit на охранение/ чтение из базы.
    3. Дополнить интеграционные тесты проверкой на неавторизованный доступ.

    Занятие 7
    Сохранение, отображение истории почты.




      • Сохранение истории почты при отсылке
      • Добавляем таблицу отсылки почты на UI
      • Добавление в UI отображения состояния почты
      • JavaScript debug в IDEA
    Асинхронность.



      • @oneway vs Java Execution framework
      • Добавление в клиенте асинхронных вызовов.
    Домашнее задание
    Исключить из MailWSClientIT.testSendMailAsync ожидание Thread.sleep.

    Занятие 8
    Сканирование истории почты




      • Добавление в Exception source.
      • Добавление в сканирование вложений
      • Инициализация конфигурации при старте сервиса
    Домашнее задание
    Сделать SecurityException через WebStateException.
    Сделать читаемым отображение ошибок отправки почты.

    Занятие 9
    Динамическое конфигурирование. JMX


    Домашнее задание
    Добавить в конфигурацию модуля web параметр rowNumber (web.rowNumber = 10 в конфигурации)
    Сделать его атрибутом JMX и выводить соответствующее rowNumber число строк таблицы истории почты.

    Занятие 10
    Асинхронность и маштабируемость. Concurrent and distributed applications toolkit AKKA





     
Оценить эту тему:
/5,
Поделиться: