IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Développer une application Struts à l'aide de NetBeans

Dvelopper une application Struts l'aide de NetBeans

Date de publication : 28/11/2005 , Date de mise à jour : 05/12/2005


1. Premire partie
1.1. Configuration du projet
1.2. Cration des Pages JSP
1.3. Cration du Bean Struts ActionForm
1.4. Cration de l'Action Struts
1.5. Excution du Projet


1. Premire partie

L'EDI NetBeans 5.0 simplifie Struts. En ne cochant qu'une seule case dans l'assistant New Web Application, toutes les bibliothques Struts sont rajoutes votre projet. De plus, vous aurez galement le fichier magique struts-config.xml, o vous enregistrez toutes les fonctionnalits de Struts sur lesquelles vous travaillez. Des assistants sont galement fournis, pour la cration de deux catgories de classes Struts -- actionform beans et les actions. Des assistants sont galement accessibles depuis le fichier struts-config.xml, pour la gnration du code utilis pour enregister les fonctionnalits de Struts.

Voici une procdure toute simple permettant la cration d'une application Struts dans l'EDI NetBeans 5.0. Vous utiliserez le framework Struts pour crer une trs simple page d'identification:

page d'identification
cran d'identification
Tout le traitement sera fait par Struts (Vous dcouvrirez ce en quoi consiste le traitement dans les tapes dcrites ci-dessous). Vous n'allez pas apprendre beaucoup conceptuellement, mais travers les tapes qui suivent ci-dessous, vous allez vous familiariser avec le framework Struts et la faon dont le support pour le framework a t implment dans l'EDI NetBeans 5.0.


1.1. Configuration du projet

Cliquez sur Maj-Ctrl-N. Dans la catgorie Web, choisissez Web Application, et cliquez sur Next. Appelez-la MyVideoStoreApplication. Cliquez sur Next. Slectionnez Struts 1.2.7 et cliquez sur Add Struts TLD. Cliquez sur Finish.

Voici ce que vous devriez voir, avec le fichier le plus important (le fichier struts-config.xml) slectionn:

Structure du Projet sous NetBeans
Structure du Projet

1.2. Cration des Pages JSP

Cliquez-droit sur le noeud du projet MyVideoStoreApplication, choisissez New > JSP et appelez la loginForm. Cliquez sur Finish. Crez une autre page JSP et appelez-la loginSuccessful. Dans l'diteur de Source, remplacez le contenu des tags H1 dans les deux nouveaux fichiers JSP par quelque chose de plus parlant. Par exemple, modifier le texte JSP Page en Login Form et Login Successful! respectivement. Faites de mme pour le texte dans les tags TITLE.

Copiez maintenant les deux premires directives du fichier welcomeStruts.jsp en haut de votre nouvelle page loginForm.jsp. Dans loginForm.jsp, en dessous des tags H1, ajoutez ce qui suit:

<html:form action="login">
   <html:submit value="Login" />
</html:form>
Il est facile de deviner que tout ce qui se trouve entre les tags html:form est gr par Struts. Notez que tout en tapant, l'EDI vous aide en suggrant diffrentes faon de completer le code que vous tapez. Vous avez galement accs la Javadoc Struts.

Visualise Code Completion & Javadoc des tags Struts
Code Completion & Javadoc des tags Struts
Dans la Palette de Composant, droite de l'diteur de Source, tendez la section HTML et dposer l'lment Table juste au-dessus de la ligne

<html:submit value="Login" />
La boite de dialogue Insert Table apparait. Assurez-vous que les valeurs de Rows et Columns soient bien sur 1, pour qu'il cre un tableau d'une ligne et une colonne. Cliquez sur OK. Entre les tags TH, introduisez ce qui suit:

<bean:message key="login.name" />
Entres les tags TD, introduisez ce qui suit:

<html:text property="name" />
Ajouter login.name comme clf au fichier ApplicationResource.properties et ajouter un message explication. Par exemple:

login.name=Name
Le corps de LoginForm.jsp contient maintenant:

Corps de LoginForm.jsp
Corps de LoginForm.jsp

1.3. Cration du Bean Struts ActionForm

Cliquez-droit sur le noeud du projet MyVideostoreApplication et choisissez New > File/Folder. Dans la catgorie Web, choisissez le Bean Struts ActionForm et cliquez sur Next. Slectionnez com.myapp.struts dans la liste droulante des package et pressez Finish. Le bean actionform s'ouvre dans l'diteur de Source. Ouvrez struts-config.xml dans l'diteur de Source et notez qu'il contient, parmis d'autres choses, ce qui suit

<form-beans>
    <form-bean name="NewStrutsActionForm" type="com.myapp.struts.NewStrutsActionForm"/>
</form-beans>
Naviguez maintenant jusque dans le bean actionform dans l'diteur de Source et jetez un oeil la mthode validate. Notez qu'un champ nomm name est valid par dfaut. Si la validation choue, ce qui se produit lorsqu'aucun nom n'est introduit dans la page JPS, un message qui est identifi par error.name.required est retourne. Ajoutez error.name.required comme clefs dans le fichier ApplicationResource.properties, et ajouter un message significatif. Par exemple:

error.name.required=Enter a name, banana brain!
Ajoutez maintenant ce qui suit dans le fichier loginForm.jsp, juste au dessus du tag de cloture </html:form>:

<html:errors />

1.4. Cration de l'Action Struts

Cliquez-droit sur le noeud du projet MyVideoStoreApplication et choisissez New > File/Folder. Dans la catgorie Web, choisissez l'Action Struts et cliquez sur Next. Slectionnez com.myapp.struts dans la liste droulante des packages. Introduisez login dans l'Action Path (le contenu de l'Action Path est donc maintenant /login).Cliquez sur Next. Remarquez que l'EDI suggre que vous associez l'action avec le bean actionform cr dans l'tape prcdente. Dans Input Resource, slectionnez votre page loginForm.jsp. Cliquez sur Finish.

Notez que maintenant, struts-config.xml contient, parmis d'autres choses, ce qui suit:

<action-mappings>
   <action input="/loginForm.jsp" 
            name="NewStrutsActionForm" 
            path="/login" 
           scope="session" 
            type="com.myapp.struts.NewStrutsAction"/>
   <action path="/Welcome" 
        forward="/welcomeStruts.jsp"/>
</action-mappings>
Naviguez jusqu' l'action et jetez un oeil la mthode execute. Notez que cette action redirige vers la vue rsultante appele success. Vous avez besoin de dfinir la page loginsuccessfil.jsp comme tant la vue rsultante. Ouvrez struts-config.xml dans l'diteur de Source, cliquez-droit n'importe o et choisissez Struts > Add forward. Introduisez success dans Forward Name. Naviguez jusqu' la page loginSuccessful.jsp dans Resource File. Cliquez sur Action. Choisissez /login depuis la liste droulante. Cliquez sur Add. Notez que le fichier struts-config.xml devrait maintenant tre semblable ceci:

<action-mappings>
  <action input="/loginForm.jsp" 
           name="NewStrutsActionForm" 
           path="/login" 
          scope="session" 
           type="com.myapp.struts.NewStrutsAction">
       <forward name="success" 
                path="/loginSuccessful.jsp"/>
  </action>
  <action path="/Welcome" 
       forward="/welcomeStruts.jsp"/>
</action-mappings>

1.5. Excution du Projet

Cliquez-droit sur le noeud du projet MyVideoStoreApplication et choisissez Run Project. Le projet dploye et affiche la page loginForm.jsp. Vous devriez voir quelque chose de semblable ceci:

LoginForm avec message d'erreur pour le nom
LoginForm
Lorsque vous introduisez un nom (ou n'importe quoi d'autre, pour autant que ce soit quelque chose), loginSuccessful.jsp est affich. Une chose intressante faire ce moment est de revenir dans le fichier ApplicationResource.properties. Modifier les quatres premires clefs par ceci:

errors.header=
errors.prefix=<span style="color: red">
errors.suffix=
errors.footer=
Dployez nouveau l'application. Si la page loginSuccessful.jsp s'affiche, et que vous ne le dsirez pas, modifier l'attribut scope du chemin /login dans struts-config.xml en request au lieu de session. Dployez nouveau et notez que le message d'erreur a t reformat.

LoginForm avec message d'erreur affich en rouge
LoginForm avec message d'erreur
Dans un futur tutoriel, je vais tendre ce scnario pour qu'il fournisse plus de fonctionnalits et qu'il devienne une page de login plus utile.

Copyright © 2006 Vincent Brabant. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.