ПО как услуга: руководство для ZillowIDE NetBeans обеспечивает диспетчер веб-служб, поддерживающий приложения модели "программное обеспечение как услуга" (SaaS). Термином "ПО как услуга" описывается модель предоставления программного обеспечения, в рамках которой поставщик ПО разрабатывает веб-приложение и отвечает за размещение и эксплуатацию программного обеспечения в целях использования заказчиками через Интернет. Популярность модели "ПО как услуга" для предоставления функциональности программного обеспечения растет, поскольку она позволяет сократить расходы заказчика и снизить требования к ресурсам оборудования. Среда IDE позволяет разработчикам Java без труда получать доступ ко всем популярным службам, предоставляющим ПО как услуги через сеть. В этом руководстве показано, как использовать простое ПО, предоставляемое как услуга zillow.com. Zillow.com – компания из Сиэтла, штат Вашингтон, основанная Ричем Бартоном (Rich Barton) и Ллойдом Фринком (Lloyd Frink), бывшими руководящими сотрудниками в корпорации Майкрософт и основателями Expedia. Zillow позволяет пользователям узнать стоимость миллионов домов во всех уголках США, как выставленных, так и не выставленных на продажу. Помимо предоставления оценок стоимости домов, она предлагает несколько уникальных функций, включая оценку изменения стоимости каждого дома за определенный промежуток времени (т. е., 1, 5 или 10 лет), виды домов с воздуха и цены на дома в округе. Когда Zillow может получить доступ к соответствующим данным, она также предоставляет основную информацию о домах, включая площадь, число комнат и число ванных комнат. Пользователи могут также получать текущие оценки стоимости домов, в случае внесения существенных изменений. В этом руководстве мы создадим диаграмму, отображающую средние цены на дома в определенном регионе США за 12 месяцев. Для этого сперва следует использовать диспетчер служб для вставки операции ZillowRealEstateService.GetRegionChart в сервлет. Среда IDE обеспечивает базовую инфраструктуру, но код сервлета необходимо будет модифицировать для извлечения URL-адреса региональной диаграммы. Данное руководство показывает, как использовать объекты JAXB для извлечения URL-адреса. Это простейший подход. Содержание ![]()
Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.
Регистрация для получения ключа интерфейса API ZillowСлужбы Zillow используют проверку подлинности с помощью ключа интерфейса API. Зарегистрируйтесь в Zillow здесь для получения ключа интерфейса API. Необходимо будет заполнить регистрационную форму, но сама регистрация бесплатна. Другие службы проверяют подлинность с помощью проверки подлинности HTTP, подписи заголовков или входа пользователей в систему. Эти механизмы будут освещены в разрабатываемых руководствах. Создание сервлетаСреда IDE позволяет вставлять операции типа "ПО как услуга" в сервлеты, существующие службы RESTful, страницы JSP или простые объекты Java (POJO). В этом руководстве мы создадим веб-приложение с сервлетом. Для создания сервлета:
Сервлет откроется во вкладке редактора, и сервлет с его родительским пакетом станут видимы в представлении Projects ("Проекты"), в узле Source Packages ("Пакеты исходного кода") проекта. ![]() Добавление операции GetRegionChart Zillow к сервлетуИспользование диспетчера служб для добавления функции "ПО как услуга" Zillow к сервлету. Среда IDE позволяет не волноваться об инфраструктуре. Для добавления операции GetRegionChart:
Среда IDE создаст код для функции GET службы "ПО как услуги". По выполнении этого, метод processRequest() будет выглядеть следующим образом.
Среда IDE также создаст два новых пакета, org.netbeans.saas и org.netbeans.saas.zillow, содержащие соединение RESTful и относящиеся к Zillow классы, соответственно. Полная структура пакета приведена ниже. Среда IDE также импортирует в сервлет классы RestConnection и ZillowRealEstateService. ![]() Добавление ключа интерфейса API к проектуЧтобы проект мог получить доступ к службам Zillow, необходимо передать ему ключ интерфейса API, полученный при регистрации. Откройте файл zillowrealestateserviceauthenticator.properties и скопируйте в него ключа интерфейса API из письма, присланного Zillow в ответ на регистрацию. Модификация сервлета для возвращения графического представления диаграммыСозданный сервлет пока не выдает никаких полезных выходных данных. Чтобы в браузере появилась собственно региональная диаграмма, необходимо извлечь URL-адрес диаграммы из String, возвращаемой службой Zillow в форме файла XML. Один из вариантов здесь – выполнить анализ файла XML и передать найденный URL-адрес странице JSР. Этот подход описан в статье Адама Миатта (Adam Myatt) Consuming Zillow Web Services ("Использование веб-служб Zillow") на сайте NetBeans Zone. В этом руководстве мы используем более простой подход, основанный на объектах JAXB. Для возвращения графического представления диаграммы выполните следующие действия:
Теперь в код внесены все необходимые изменения. Окончательный вариант кода сервлета выглядит так: package zillow.regionchart; import java.io.IOException; import java.io.PrintWriter; import java.util.logging.Level; import java.util.logging.Logger; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.xml.bind.JAXBException; import org.netbeans.saas.zillow.ZillowRealEstateService; import org.netbeans.saas.RestResponse; /** * * @author jeff */ public class ZillowRegionChartServlet extends HttpServlet { /** * Processes requests for both HTTP Запуск сервлета региональной диаграммы ZillowПростейший способ запуска сервлета – щелкнуть его правой кнопкой мыши в представлении Projects ("Проекты") и выбрать Run File ("Запустить файл"). Либо же щелкните правой кнопкой мыши узел Project ("Проект") и выберите Properties ("Свойства"). В дереве Properties ("Свойства") выберите Run. В поле Relative URL ("Относительный URL-адрес") введите /ZillowRegionChartServlet, как показано ниже. Нажмите кнопку OK и запустите проект. ![]() При успешном запуске проекта откроется окно браузера с региональной диаграммой. ![]() Дополнительные упражненияНиже приведены дополнительные мысли для исследования:
Дополнительные сведенияДополнительные сведения об использовании IDE NetBeans для разработки веб-служб RESTful, приложений модели "программное обеспечение как услуга" и других приложений Java EE см. следующие ресурсы:
Для отправки комментариев и предложений, получения поддержки и новостей о последних разработках, связанных с Java EE IDE NetBeans присоединяйтесь к списку рассылки . |
Documentation |