Övning – Skapa en Java-webbapp

Slutförd

I föregående lektion lärde du dig att det finns två vanliga plugin-program som utvecklare använder för att köra webbappar lokalt på sina datorer: Eclipse Jetty och Apache Tomcat. Azure App Service-plugin-programmet stöder båda dessa webbservrar, och ditt företag har valt att använda Tomcat för sina Java-webbprojekt på grund av dess omfattande branschimplementering och stöd från Apache Foundation. För att hjälpa dig att förstå vad ditt företag behöver göra för att migrera befintliga Java-projekt till Azure har du valt att skapa en testwebbapp med Maven och arketyper.

I den här övningen skapar du en ny Java-webbapp med hjälp av maven-archetype-webapp arketyp. När du har skapat webbappen uppdaterar du pom.xml-filen för att lägga till Tomcat-plugin-programmet så att du kan testa appen lokalt. Sedan uppdaterar du den för att ge mer information om var appen körs.

Skapa en Java-webbapp

  1. I Azure Cloud Shell till höger använder du följande Maven-kommando för att skapa en ny Java-webbapp:

    mvn archetype:generate \
      -DgroupId=com.microsoft.example \
      -DartifactId=MyWebApp \
      -DarchetypeArtifactId=maven-archetype-webapp \
      -DarchetypeVersion=1.4 \
      -DinteractiveMode=false
    
  2. Växla till projektkatalogen och använd code för att redigera pom.xml-filen för webbappen:

    cd MyWebApp
    code pom.xml
    
  3. Leta upp elementet <plugins> i filen pom.xml och lägg till följande <plugin> under befintliga plugin-program, vilket gör att du kan köra en lokal webbserver för att testa webbappen:

    <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. Spara ändringarna genom att skriva Ctrl+S.

  5. Avsluta kodredigeraren genom att skriva Ctrl+Q.

  6. Använd Maven för att paketera din nya webbapp:

    mvn package
    

Testa exempelwebbappen

  1. I den här övningen måste du öppna en port för att göra den lokala webbservern tillgänglig för visning i en webbläsare. Det gör du genom att använda följande curl kommando i Cloud Shell:

    curl -X POST http://localhost:8888/openPort/8000;
    
  2. Kommandot curl returnerar ett JSON-objekt som i följande exempel, som innehåller en URL som du ska använda senare i den här övningen för att visa webbservern:

    {"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
    
  3. Starta Tomcat-webbservern med Maven:

    mvn cargo:run
    
  4. Öppna en ny webbläsarflik med hjälp av URL:en från JSON som returnerades av kommandot curl som du körde tidigare och lägg till MyWebApp/ i slutet av URL:en. Om du till exempel använder bilden ovan skulle url:en vara https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/. Du bör se Hello World! visas i webbläsaren:

    Skärmbild av exempelwebbappen som körs på Tomcat i en webbläsare.

  5. Avsluta webbservern genom att skriva Ctrl+C i Cloud Shell.

I nästa lektion får du lära dig hur du distribuerar din webbapp till Azure App Service.