练习 - 创建 Java Web 应用

已完成

在上一单元中,你了解到开发人员使用两个常见插件在本地在其计算机上运行 Web 应用: Eclipse JettyApache Tomcat。 Azure 应用服务插件支持这两个 Web 服务器,您的公司已选择使用 Tomcat 来用于 Java Web 项目,因为它被广泛应用于行业并且得到了 Apache 基金会的支持。 为了帮助你了解公司将现有 Java 项目迁移到 Azure 需要执行的步骤,你已决定使用 Maven 和原型来创建一个测试 Web 应用。

在本练习中,你将使用 maven-archetype-webapp 原型创建新的 Java Web 应用。 创建 Web 应用后,将更新 pom.xml 文件以添加 Tomcat 插件,以便在本地测试应用。 然后,更新它以提供有关应用运行位置的详细信息。

创建 Java Web 应用

  1. 在右侧的 Azure Cloud Shell 中,使用以下 Maven 命令创建新的 Java Web 应用:

    mvn archetype:generate \
      -DgroupId=com.microsoft.example \
      -DartifactId=MyWebApp \
      -DarchetypeArtifactId=maven-archetype-webapp \
      -DarchetypeVersion=1.4 \
      -DinteractiveMode=false
    
  2. 切换到项目目录,并使用code编辑您的网络应用的pom.xml文件。

    cd MyWebApp
    code pom.xml
    
  3. 找到文件中的<plugins>pom.xml元素,并在现有插件下面添加以下<plugin>元素,以便运行本地 Web 服务器来测试 Web 应用:

    <plugin>
      <groupId>org.codehaus.cargo</groupId>
      <artifactId>cargo-maven3-plugin</artifactId>
      <version>1.10.13</version>
      <configuration>
        <container>
          <containerId>tomcat11x</containerId>
        </container>
        <configuration>
          <properties>
            <!-- http port needed in the sandbox is 8000 -->
            <cargo.servlet.port>8000</cargo.servlet.port>
          </properties>
        </configuration>
      </configuration>
    </plugin>
    
  4. 键入 Ctrl+S 保存更改。

  5. 键入 Ctrl+Q 退出代码编辑器。

  6. 使用 Maven 打包新的 Web 应用:

    mvn package
    

测试示例 Web 应用

  1. 在本练习中,需要打开一个端口,使本地 Web 服务器可用于在浏览器中查看。 为此,请在 Cloud Shell 中使用以下命令:curl

    curl -X POST http://localhost:8888/openPort/8000;
    
  2. curl 命令返回类似于以下示例的 JSON 对象,其中包含稍后在本练习中使用的 URL 以查看 Web 服务器:

    {"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
    
  3. 使用 Maven 启动 Tomcat Web 服务器:

    mvn cargo:run
    
  4. 使用前面运行的命令返回的 JSON 中的 curl URL 打开新的浏览器选项卡,将其 MyWebApp/ 追加到 URL 的末尾。 例如,使用上面的图示,该 URL 将是 https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/. 应该会在浏览器中看到 Hello World! 显示:

    Web 浏览器中在 Tomcat 上运行的示例 Web 应用的屏幕截图。

  5. 通过在 Cloud Shell 中键入 Ctrl+C 退出 Web 服务器。

在下一单元中,你将了解如何将 Web 应用部署到 Azure 应用服务。