Exercice - Créer une application web Java

Effectué

Dans l’unité précédente, vous avez découvert qu’il existait deux plug-ins couramment utilisés par les développeurs pour exécuter des applications web localement sur leurs ordinateurs : Eclipse Jetty et Apache Tomcat. Le plug-in Azure App Service prend en charge ces deux serveurs web, et votre entreprise a choisi d’utiliser Tomcat pour ses projets web Java en raison de sa large adoption à l’échelle du secteur et du support fourni par la fondation Apache. Pour vous aider à comprendre ce que votre entreprise doit faire pour migrer des projets Java existants vers Azure, vous avez décidé de créer une application web de test à l’aide de Maven et d’archétypes.

Dans cet exercice, vous allez créer une application web Java à l’aide de l’archétype maven-archetype-webapp. Après avoir créé l’application web, vous mettrez à jour le fichier pom.xml pour ajouter le plug-in Tomcat afin de pouvoir tester votre application localement. Ensuite, vous la mettrez à jour pour fournir plus d’informations sur l’emplacement où l’application s’exécute.

Créer une application web Java

  1. Dans Azure Cloud Shell à droite, exécutez la commande Maven suivante pour créer une application web Java :

    mvn archetype:generate \
      -DgroupId=com.microsoft.example \
      -DartifactId=MyWebApp \
      -DarchetypeArtifactId=maven-archetype-webapp \
      -DarchetypeVersion=1.4 \
      -DinteractiveMode=false
    
  2. Basculez vers le répertoire de votre projet et utilisez code pour modifier le fichier pom.xml de votre application web :

    cd MyWebApp
    code pom.xml
    
  3. Recherchez l’élément <plugins> dans le fichier pom.xml et ajoutez les <plugin> suivantes sous les plug-ins existants », ce qui vous permet d’exécuter un serveur web local pour tester votre application 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. Enregistrez vos modifications en tapant Ctrl+S.

  5. Quittez l’éditeur de code en tapant Ctrl+Q.

  6. Utilisez Maven pour créer un package de votre nouvelle application web :

    mvn package
    

Tester l’exemple d’application web

  1. Dans le cadre de cet exercice, vous devez ouvrir un port pour que le serveur web local puisse être affiché dans un navigateur. Pour cela, exécutez la commande curl suivante dans Cloud Shell :

    curl -X POST http://localhost:8888/openPort/8000;
    
  2. La commande curl retourne un objet JSON, comme dans l’exemple suivant, qui contient l’URL dont vous aurez besoin plus loin dans cet exercice pour afficher le serveur web :

    {"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
    
  3. Démarrez le serveur web Tomcat avec Maven :

    mvn cargo:run
    
  4. Ouvrez un nouvel onglet de navigateur en utilisant l’URL indiquée dans le code JSON qui a été retourné par la commande curl exécutée précédemment, en ajoutant MyWebApp/ à la fin de l’URL. Par exemple, si l’on prend l’illustration ci-dessus, cette URL sera https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/. Vous devriez voir le texte Hello World! dans votre navigateur :

    Capture d’écran de l’exemple d’application web s’exécutant sur Tomcat dans un navigateur web.

  5. Quittez le serveur web en tapant Ctrl+C dans Cloud Shell.

Dans l’unité suivante, vous allez découvrir comment déployer votre application web sur Azure App Service.