Exemple Google App Engine + Struts 1
Vive le framework Struts 1 classique, dans ce tutoriel, nous allons vous montrer comment développer une application webStruts 1.x dans l'environnementGoogle App Engine (GAE).
Outils et technologies utilisés:
-
JDK 1.6
-
Eclipse 3.7 + Plugin Google pour Eclipse
-
SDK Java de Google App Engine 1.6.3.1
-
Struts 1.3.10
Note
Vous pouvez également vous intéresser à ceGoogle App Engine + Struts 2 example.
Cet exemple va fusionnerStruts 1.x hello world example avec ceGAE + Java example.
1. Nouveau projet d'application Web
Dans Eclipse, créez un nouveau projet d'application Web, nommé «StrutsGoogleAppEngine».
Le plug-in Google pour Eclipse générera un exemple de structure de projet GAE. plus tard intégrera Struts 1 dans cette structure GAE.
2. Intégrer les bibliothèques Struts 1.x
Visitez ce lien versdownload Struts 1.x. Les bocaux suivants sont requis:
-
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
Copiez-le et placez-le dans le dossier «war/WEB-INF/lib».
Faites un clic droit sur le dossier du projet, sélectionnez «Properties». Sélectionnez l'onglet «Java Build Path» → «Libraries», cliquez sur le bouton «Add Jars» et sélectionnez les 9 fichiers ci-dessus du dossier «war/WEB-INF/lib» dans le chemin de construction.
3. Intégrer l'action et le formulaire Struts 1.x
3.1 Delete StrutsGoogleAppEngineServlet.java
, you don’t need this.
3.2 Create a new Action class.
Fichier: src / com / exemple / 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.
Fichier: 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. Intégrer les pages JSP Struts 1.x
4.1 Create HelloWorld.jsp
page and put in “war/User/pages/HelloWorld.jsp“.
Fichier: HelloWorld.jsp
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>Google App Engine + Struts 1.x example
5. Configuration XML de Struts
Créez un fichierstruts-config.xml
et placez-le dans «war/WEB-INF/struts-config.xml».
Fichier: struts-config.xml
6. web.xml
Mettez à jourweb.xml
, intégrez Struts.
Fichier: web.xml
action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml 1 action *.do index.html
7. Activer la session dans GAE
Mettez à jourappengine-web.xml
, activez le support de session, Struts en a besoin.
Fichier: appengine-web.xml
1 true
Note
Si vous n’activez pas la session dans GAE, vous obtiendrez l’erreur «java.lang.RuntimeException: Session support is not enabled in appengine-web.xml».
8. Structure du répertoire
Vérifiez la structure finale du répertoire.
9. Exécuter en local
Faites un clic droit sur le projet, exécutez en tant que «Web Application».
10. Déployer sur GAE
Mettez à jour le fichierappengine-web.xml
, ajoutez votre ID d'application App Engine.
Fichier: appengine-web.xml
example-strutsgae 1 true
Sélectionnez le projet, cliquez sur l'icône Google, «Deploy to App Engine».
Note
Pas beaucoup de problème, il suffit de suivre la structure de répertoires GAE, au moins intégrer Struts 1 est plus facile que Struts 2.
Télécharger le code source
En raison de la grande taille du fichier, tous les pots Struts1 sont exclus, vous devez le télécharger manuellement.
Télécharger -StrutsGoogleAppEngine (13 KB)