演習 - Java Web アプリを作成する

完了

前のユニットでは、開発者が Web アプリを自分のマシンでローカルに実行するために使用する一般的なプラグインには、以下の 2 つがあることを学習しました。("Eclipse Jetty" と "Apache Tomcat") があることを学習しました。 Azure App Service プラグインは、これらの Web サーバーの両方をサポートします。Tomcat は業界で幅広く採用されており、Apache 財団によるサポートも得られるため、会社はこれを Java Web プロジェクトに使用することを選択しました。 あなたは、会社が既存の 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 を使用して、Web アプリの pom.xml ファイルを編集します。

    cd MyWebApp
    code pom.xml
    
  3. pom.xml ファイル内の <plugins> 要素を検索し、次の <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 オブジェクトを返します。これには、この演習の後半で Web サーバーを表示するために使用する URL が含まれています。

    {"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. 以前に実行した curl コマンドによって返された JSON の URL を使用し、その URL の末尾に MyWebApp/ を追加して、新しいブラウザー タブを開きます。 たとえば、上の図を使用すると、その 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 サーバーを終了します。

このユニットでは、Azure App Service に Web アプリをデプロイする方法について学習します。