Übung: Erstellen einer Java-Web-App
In der vorherigen Lerneinheit haben Sie erfahren, dass es zwei häufig verwendete Plug-Ins gibt, die Entwickler verwenden, um Web-Apps lokal auf ihren Computern auszuführen: Eclipse Jetty und Apache Tomcat. Das Azure App Service-Plug-In unterstützt beide Webserver, und Ihr Unternehmen hat sich dazu entschieden, Tomcat für seine Java-Webprojekte zu verwenden, da diese Lösung problemlos an branchenübliche Anforderungen angepasst werden kann und Apache unterstützt wird. Damit Sie ein Verständnis dafür erlangen, was Ihr Unternehmen tun muss, um vorhandene Java-Projekte zu Azure zu migrieren, haben Sie sich dazu entschieden, eine Web-App zu Testzwecken mithilfe von Maven und vorgefertigten Typen zu erstellen.
In dieser Übung erstellen Sie mithilfe des vorgefertigten maven-archetype-webapp
-Typs eine neue Java-Web-App. Nach Erstellung der Web-App aktualisieren Sie die pom.xml
-Datei so, dass das Tomcat-Plug-In hinzugefügt wird, damit Sie Ihre App lokal testen können. Anschließend aktualisieren Sie sie, um weitere Informationen darüber anzugeben, wo die App ausgeführt wird.
Erstellen einer Java-Web-App
Verwenden Sie den folgenden Maven-Befehl rechts in Azure Cloud Shell, um eine neue Java-Web-App zu erstellen:
mvn archetype:generate \ -DgroupId=com.microsoft.example \ -DartifactId=MyWebApp \ -DarchetypeArtifactId=maven-archetype-webapp \ -DarchetypeVersion=1.4 \ -DinteractiveMode=false
Wechseln Sie zu Ihrem Projektverzeichnis, und verwenden Sie
code
, um diepom.xml
-Datei für Ihre Web-App zu bearbeiten:cd MyWebApp code pom.xml
Suchen Sie das
<plugins>
-Element in der Dateipom.xml
, und fügen Sie unterhalb der vorhandenen Plug-Ins das folgende<plugin>
-Element hinzu, wodurch Sie einen lokalen Webserver zum Testen Ihrer Web-App ausführen können:<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>
Speichern Sie die Änderungen, indem Sie STRG+S drücken.
Schließen Sie den Code-Editor durch Drücken von STRG+Q.
Verwenden Sie Maven, um Ihre neue Web-App zu verpacken:
mvn package
Testen der Beispiel-Web-App
Für diese Übung müssen Sie einen Port öffnen, um den lokalen Webserver zum Anzeigen in einem Browser zur Verfügung zu stellen. Verwenden Sie hierzu den folgenden
curl
-Befehl in Cloud Shell:curl -X POST http://localhost:8888/openPort/8000;
Der
curl
-Befehl gibt ein JSON-Objekt ähnlich dem folgenden Beispiel zurück, das eine URL enthält, die Sie später in dieser Übung zum Anzeigen des Webservers verwenden:{"message":"Port 8000 is open","url":"https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/"}
Starten Sie den Tomcat-Webserver mit Maven:
mvn cargo:run
Öffnen Sie die URL aus dem vom zuvor ausgeführten
curl
-Befehl zurückgegebenen JSON-Objekt in einer neuen Registerkarte, und fügen SieMyWebApp/
an das Ende der URL an. Beim obigen Beispiel würde diese URL wie folgt lauten: https://gateway18.westeurope.console.azure.com/n/cc-1829663c/cc-1829663c/proxy/8000/MyWebApp/.. In Ihrem Browser sollte Hello World! angezeigt werden:Beenden Sie den Webserver, indem Sie STRG+C in Cloud Shell drücken.
In der nächsten Lerneinheit erfahren Sie, wie Sie Ihre Web-App in Azure App Service bereitstellen.