Google App Engine + Struts 1 Beispiel
Es lebe das klassische Struts 1-Framework. In diesem Tutorial zeigen wir Ihnen, wie Sie eine Webanwendung vonStruts 1.xin einer Umgebung vonGoogle App Engine (GAE) entwickeln.
Verwendete Tools und Technologien:
-
JDK 1.6
-
Eclipse 3.7 + Google Plugin für Eclipse
-
Java SDK für Google App Engine 1.6.3.1
-
Streben 1.3.10
Note
Sie können auch an diesenGoogle App Engine + Struts 2 example interessiert sein.
In diesem Beispiel werdenStruts 1.x hello world example mitGAE + Java example zusammengeführt.
1. Neues Webanwendungsprojekt
Erstellen Sie in Eclipse ein neues Webanwendungsprojekt mit dem Namen "StrutsGoogleAppEngine".
Google Plugin for Eclipse generiert eine GAE-Beispielprojektstruktur. Später wird Struts 1 in diese GAE-Struktur integriert.
2. Integrieren Sie Struts 1.x-Bibliotheken
Besuchen Sie diesen Link zudownload Struts 1.x. Folgende Gläser werden benötigt:
-
antlr-2.7.2.jar
-
commons-beanutils-1.8.0.jar
-
commons-chain-1.2.jar
-
commons-digester-1.8.jar
-
commons-logging-1.0.4.jar
-
commons-validator-1.3.1.jar
-
oro-2.0.8.jar
-
struts-core-1.3.10.jar
-
struts-taglib-1.3.10.jar
Kopieren Sie es und legen Sie es im Ordner "war/WEB-INF/lib" ab.
Klicken Sie mit der rechten Maustaste auf den Projektordner und wählen Sie „Properties“. Wählen Sie die Registerkarte „Java Build Path“ → „Libraries“, klicken Sie auf die Schaltfläche „Add Jars“ und wählen Sie über 9 Gläser aus dem Ordner „war/WEB-INF/lib“ in den Erstellungspfad.
3. Struts 1.x-Aktion und -Form integrieren
3.1 Delete StrutsGoogleAppEngineServlet.java
, you don’t need this.
3.2 Create a new Action class.
Datei: src / com / example / action / HelloWorldAction.java
package com.example.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.example.form.HelloWorldForm; public class HelloWorldAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { HelloWorldForm helloWorldForm = (HelloWorldForm) form; helloWorldForm.setMessage("Hello World!"); return mapping.findForward("success"); } }
3.3 Create a new form class.
Datei: src / com / example / form / HelloWorldForm.java
package com.example.form; import org.apache.struts.action.ActionForm; public class HelloWorldForm extends ActionForm { String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
4. Integrieren Sie Struts 1.x-JSP-Seiten
4.1 Create HelloWorld.jsp
page and put in “war/User/pages/HelloWorld.jsp“.
Datei: HelloWorld.jsp
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>Google App Engine + Struts 1.x example
5. Struts XML-Konfiguration
Erstellen Sie einestruts-config.xml
-Datei und fügen Sie sie in „war/WEB-INF/struts-config.xml“ ein.
Datei: struts-config.xml
6. web.xml
Aktualisieren Sieweb.xml
, integrieren Sie Struts.
Datei: web.xml
action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml 1 action *.do index.html
7. Sitzung in GAE aktivieren
Aktualisieren Sieappengine-web.xml
, aktivieren Sie die Sitzungsunterstützung. Struts benötigen dies.
Datei: appengine-web.xml
1 true
Note
Wenn Sie die Sitzung in GAE nicht aktivieren, wird der Fehler "java.lang.RuntimeException: Session support is not enabled in appengine-web.xml" angezeigt.
8. Verzeichnisaufbau
Überprüfen Sie die endgültige Verzeichnisstruktur.
9. Führen Sie auf lokal aus
Klicken Sie mit der rechten Maustaste auf das Projekt und führen Sie es als „Web Application“ aus.
10. Auf GAE bereitstellen
Aktualisieren Sie die Dateiappengine-web.xml
und fügen Sie Ihre App Engine-Anwendungs-ID hinzu.
Datei: appengine-web.xml
example-strutsgae 1 true
Wählen Sie ein Projekt aus und klicken Sie auf das Google-Symbol „Deploy to App Engine“.
Note
Kein großes Problem, folgen Sie einfach der GAE-Verzeichnisstruktur, zumindest ist die Integration von Struts 1 einfacher als von Struts 2.
Quellcode herunterladen
Aufgrund der großen Dateigröße sind alle Struts1-Gläser ausgeschlossen. Sie müssen sie manuell herunterladen.
Herunterladen -StrutsGoogleAppEngine (13 KB)