Упражнение. Создание веб-приложения Azure
В предыдущем уроке вы узнали, что есть два распространенных подключаемых модуля, которые разработчики используют для локального запуска веб-приложений на своих компьютерах: Eclipse Jetty и Apache Tomcat. Подключаемый модуль службы приложений Azure поддерживает оба этих веб-сервера, и ваша компания решила использовать Tomcat для своих веб-проектов Java, так как она широко распространена и поддерживается Apache Foundation. Чтобы понять, что необходимо сделать компании для переноса существующих проектов Java в Azure, вы решили создать тестовое веб-приложение с помощью Maven и архетипов.
В этом упражнении вы создадите веб-приложение Java с помощью архетипа maven-archetype-webapp
. После создания веб-приложения вы обновите файл pom.xml
, чтобы добавить подключаемый модуль Tomcat, позволяющий протестировать приложение локально. Затем вы обновите его, чтобы предоставить дополнительные сведения о том, где работает приложение.
Создание веб-приложения Azure
В Azure Cloud Shell справа используйте следующую команду Maven для создания нового веб-приложения Java:
mvn archetype:generate \ -DgroupId=com.microsoft.example \ -DartifactId=MyWebApp \ -DarchetypeArtifactId=maven-archetype-webapp \ -DinteractiveMode=false
Перейдите в каталог проекта и
code
изменитеpom.xml
файл для веб-приложения:cd MyWebApp code pom.xml
<finalName>MyWebApp</finalName>
Найдите элемент вpom.xml
файле и добавьте следующий XML-код под этой строкой, чтобы добавить подключаемый модуль Tomcat в проект, который позволяет запустить локальный веб-сервер для тестирования веб-приложения:<plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <!-- http port needed in the sandbox is 8000 --> <port>8000</port> </configuration> </plugin> </plugins>
Сохраните изменения, нажав CTRL+S.
Закройте редактор кода, нажав CTRL+Q.
Используйте Maven для упаковки нового веб-приложения:
mvn package
При сборке веб-приложения в консоли Maven будут отображаться сообщения. Сборка должна завершиться сообщением о состоянии, аналогичным сообщению в следующем примере:
[INFO] Packaging webapp [INFO] Assembling webapp [MyWebApp] in [/home/~/MyWebApp/target/MyWebApp] [INFO] Processing war project [INFO] Copying webapp resources [/home/~/MyWebApp/src/main/webapp] [INFO] Webapp assembled in [23 msecs] [INFO] Building war: /home/~/MyWebApp/target/MyWebApp.war [INFO] WEB-INF/web.xml already added, skipping [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 3.052 s [INFO] Finished at: 2020-02-12T21:12:00+00:00 [INFO] Final Memory: 15M/122M [INFO] ------------------------------------------------------------------------
Тестирование примера веб-приложения
В этом упражнении необходимо открыть порт, чтобы локальный веб-сервер можно было открыть в браузере. Для этого используйте следующую
curl
команду в Cloud Shell:curl -X POST http://localhost:8888/openPort/8000;
Команда
curl
возвращает объект JSON, как в следующем примере, который содержит URL-адрес, который будет использоваться далее в этом упражнении для просмотра веб-сервера:{"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
Запустите веб-сервер Tomcat с помощью Maven:
mvn tomcat7:run
Откройте новую вкладку браузера, используя URL-адрес из JSON-кода, возвращенного ранее командой
curl
, и добавивMyWebApp/
в конец URL-адреса. Например, на этом рисунке URL-адрес будет таким: https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/. Вы должны увидеть Hello World! в браузере:Завершите работу веб-сервера, нажав CTRL+C в Cloud Shell.
В следующем модуле вы узнаете, как развернуть веб-приложение в службе приложений Azure.