Oefening: een Java-web-app maken
In de vorige les hebt u geleerd dat er twee algemene invoegtoepassingen zijn die ontwikkelaars gebruiken om web-apps lokaal op hun computer uit te voeren: Eclipse Jetty- en Apache Tomcat-. De Azure App Service-invoegtoepassing ondersteunt beide webservers en uw bedrijf heeft ervoor gekozen Tomcat te gebruiken voor de Java-webprojecten vanwege de uitgebreide ingebruikname en ondersteuning van de Apache-basis. Als u wilt weten wat uw bedrijf moet doen om bestaande Java-projecten te migreren naar Azure, hebt u besloten om een testweb-app te maken met behulp van Maven en archetypen.
In deze oefening maakt u een nieuwe Java-web-app met behulp van het maven-archetype-webapp
archetype. Nadat u de web-app hebt gemaakt, werkt u het pom.xml
-bestand bij om de Tomcat-invoegtoepassing toe te voegen, zodat u uw app lokaal kunt testen. Vervolgens werkt u deze bij om meer informatie te geven over waar de app wordt uitgevoerd.
Een Java-web-app maken
Gebruik in azure Cloud Shell aan de rechterkant de volgende Maven-opdracht om een nieuwe Java-web-app te maken:
mvn archetype:generate \ -DgroupId=com.microsoft.example \ -DartifactId=MyWebApp \ -DarchetypeArtifactId=maven-archetype-webapp \ -DarchetypeVersion=1.4 \ -DinteractiveMode=false
Ga naar de projectmap en gebruik
code
om hetpom.xml
-bestand voor uw web-app te bewerken:cd MyWebApp code pom.xml
Zoek het element
<plugins>
in hetpom.xml
-bestand en voeg de volgende<plugin>
toe onder de bestaande invoegtoepassingen, waarmee u een lokale webserver kunt uitvoeren om uw web-app te testen:<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>
Sla uw wijzigingen op door Ctrl+S-te typen.
Sluit de code-editor af door Ctrl+Qte typen.
Gebruik Maven om uw nieuwe web-app in te pakken:
mvn package
De voorbeeldweb-app testen
Voor deze oefening moet u een poort openen om de lokale webserver beschikbaar te maken voor weergave in een browser. Gebruik hiervoor de volgende
curl
opdracht in Cloud Shell:curl -X POST http://localhost:8888/openPort/8000;
De opdracht
curl
retourneert een JSON-object, zoals in het volgende voorbeeld, dat een URL bevat die u later in deze oefening gaat gebruiken om de webserver weer te geven:{"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
Start de Tomcat-webserver met Maven:
mvn cargo:run
Open een nieuw browsertabblad met behulp van de URL van de JSON die is geretourneerd door de
curl
opdracht die u eerder hebt uitgevoerd, waarbijMyWebApp/
wordt toegevoegd aan het einde van de URL. Als u bijvoorbeeld de bovenstaande afbeelding gebruikt, wordt die URL https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/. Als het goed is, zou u Hallo wereld! te zien krijgen in uw browser.Sluit de webserver af door Ctrl+C- in de Cloud Shell te typen.
In de volgende les leert u hoe u uw web-app implementeert in Azure App Service.