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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

Problème d'Action Mapping


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Par défaut Problème d'Action Mapping
    Bonjour à tous, je débute depuis peu sous Struts, je découvre avec bonheur les difficultés du framework.
    Même si jusqu'à aujourd'hui, j'ai pu résoudre les problèmes rencontrés, je dois bien avouer être complétement bloqués.

    Pour résumer la situation, il s'agit d'un problème d'action mapping, en effet, une fois que j'ai cliquer sur mon lien, tomcat m'affiche alors une erreur 500.

    Je vous joint ci dessous le code dont je bénéficie.

    L'action Mapping contenu dans struts-config.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <action path = "/AjoutProjetFormulaire"
                type = "ActionAjoutProjet"
                name="AjoutProjetForm" 
                parameter ="method"
                scope     = "request"
                validate  = "true"
                input     = "/pages/ajoutProjet.jsp">
    		<forward name="succes" path="page.ajoutProjet"  />
    		<forward name="projetValide" path="page.projetValide"  />
            <forward name="erreur" path="/pages/erreur.jsp"  />
        </action>
    Le lien contenu dans la JSP.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	<a href='MonApplication/AjoutProjetFormulaire.do?method=action'> Ajouter un Projet </a>
    Et enfin, un extrait de la classe ActionAjoutProjet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    import javax.naming.NamingException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.actions.DispatchAction;
     
    import com.gianfar.dao.AjoutProjetDAO;
    import com.gianfar.metier.ProjetBean;
     
     
    public class ActionAjoutProjet extends DispatchAction {
     
    	public ActionForward action(ActionMapping Mapping,
    			ActionForm Form, HttpServletRequest Requete,
    			HttpServletResponse Reponse) {			
     
    				return Mapping.findForward("succes");
    	}
    Si besoin, voilà l'affichage de la console
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
     
    25 janv. 2012 03:51:09 org.apache.catalina.core.AprLifecycleListener init
    INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files (x86)\Java\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files (x86)/Java/jre6/bin/client;C:/Program Files (x86)/Java/jre6/bin;C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\Windows Live\Shared;.
    25 janv. 2012 03:51:09 org.apache.tomcat.util.digester.SetPropertiesRule begin
    ATTENTION: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:MonApplication' did not find a matching property.
    25 janv. 2012 03:51:09 org.apache.coyote.http11.Http11Protocol init
    INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
    25 janv. 2012 03:51:09 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 628 ms
    25 janv. 2012 03:51:09 org.apache.catalina.core.StandardService start
    INFO: Démarrage du service Catalina
    25 janv. 2012 03:51:09 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/6.0.35
    25 janv. 2012 03:51:10 org.apache.struts.action.ActionServlet initChain
    INFO: Loading chain catalog from jar:file:/C:/Users/Vincent/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/MonApplication/WEB-INF/lib/struts-tiles-1.3.10.jar!/org/apache/struts/tiles/chain-config.xml
    25 janv. 2012 03:51:10 org.apache.struts.tiles.TilesPlugin initDefinitionsFactory
    INFO: Tiles definition factory loaded for module ''.
    25 janv. 2012 03:51:10 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/org/apache/struts/validator/validator-rules.xml'
    25 janv. 2012 03:51:10 org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-defs.xml'
    25 janv. 2012 03:51:10 org.apache.coyote.http11.Http11Protocol start
    INFO: Démarrage de Coyote HTTP/1.1 sur http-8080
    25 janv. 2012 03:51:10 org.apache.jk.common.ChannelSocket init
    INFO: JK: ajp13 listening on /0.0.0.0:8009
    25 janv. 2012 03:51:10 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/28  config=null
    25 janv. 2012 03:51:10 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 1134 ms
    25 janv. 2012 03:52:47 org.apache.struts.chain.ComposableRequestProcessor init
    INFO: Initializing composable request processor for module prefix ''
    25 janv. 2012 03:52:47 org.apache.struts.chain.commands.servlet.CreateAction createAction
    INFO: Initialize action of type: ActionLancement
    25 janv. 2012 03:52:48 org.apache.struts.tiles.commands.TilesPreProcessor execute
    INFO: Tiles process complete; forward to /pages/generale.jsp
    25 janv. 2012 03:59:25 org.apache.struts.tiles.commands.TilesPreProcessor execute
    INFO: Tiles process complete; forward to /pages/generale.jsp
    25 janv. 2012 03:59:45 org.apache.struts.chain.commands.AbstractExceptionHandler execute
    ATTENTION: Unhandled exception
    java.lang.NullPointerException
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:289)
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:357)
    	at org.apache.struts.chain.commands.CreateActionForm.execute(CreateActionForm.java:92)
    	at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    	at java.lang.Thread.run(Unknown Source)
    25 janv. 2012 03:59:45 org.apache.struts.chain.commands.ExceptionCatcher postprocess
    ATTENTION: Exception from exceptionCommand 'servlet-exception'
    java.lang.NullPointerException
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:289)
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:357)
    	at org.apache.struts.chain.commands.CreateActionForm.execute(CreateActionForm.java:92)
    	at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    	at java.lang.Thread.run(Unknown Source)
    25 janv. 2012 03:59:45 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: "Servlet.service()" pour la servlet action a généré une exception
    java.lang.NullPointerException
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:289)
    	at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:357)
    	at org.apache.struts.chain.commands.CreateActionForm.execute(CreateActionForm.java:92)
    	at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
    	at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
    	at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    	at java.lang.Thread.run(Unknown Source)
    Étant encore débutant je suis navré si j'utilise un vocabulaire inadapté.
    Merci par avance

  2. #2
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Alors, déjà, il ne faut pas utiliser le package par défaut.
    Je te conseille donc de créer au moins un package et d'y mettre tes classes Action, ActionForm, et de modifier le struts-config.xml en conséquence.

    De plus, tu appelles l'Action en cliquant sur un lien.
    Il n'y a donc pas de soumission de formulaire.
    Il faut donc mettre validate à false dans le mapping de l'Action.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2
    Par défaut
    Merci pour tous ces conseils, je vais tester tout ça
    Au fait, ça ne change rien que l'URL soit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /MonApplication/AjoutProjetFormulaire.do?method=action
    Il ne vaudrait pas mieux:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /AjoutProjetFormulaire.do?method=action

Discussions similaires

  1. Création d'Action Mapping personnalisée.
    Par DarkWark dans le forum Struts 1
    Réponses: 22
    Dernier message: 18/06/2007, 12h23
  2. [STRUTS][TILES] Problème sur actions génériques
    Par xv-mnt dans le forum Struts 1
    Réponses: 1
    Dernier message: 02/08/2005, 10h15
  3. [Struts][Tiles] Probleme d'action mapping avec un dynaform
    Par bluefox_du_974 dans le forum Struts 1
    Réponses: 3
    Dernier message: 28/03/2005, 22h47
  4. [Struts][JSP]Problème de Action Path
    Par luzi dans le forum Struts 1
    Réponses: 2
    Dernier message: 23/05/2004, 23h39
  5. Problème avec memory mapping
    Par gemai dans le forum C
    Réponses: 13
    Dernier message: 04/07/2003, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo