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 avec le DispatchAction.


Sujet :

Struts 1 Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut Problème avec le DispatchAction.
    Bonjour à tous...
    j'ai un petit problème avec la mise en place du DispatchAction..
    J'ai défini dans le struts-config.xml, une classe DisplayAction et CreateAction qui héritent toutes les deux de DispatchAction et auxquelles j'ai rajouté
    La classe DisplayAction est mappé avec display.jsp et dans cette jsp, j'ai une propriété défini en hidden:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <input type="hidden" property="operation" value="toto"/>
    , une méthode javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     function setOperation(valeur){document.forms[0].operation.value=valeur;}
    et deux boutons: Add et Delete avec des fonctions javascripts associées sur l'évenement "onClick".
    Pour le bouton Add: la méthode appelé est AddForm:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function AddForm(){
    setOperation('addForm');
    document.forms[0].action='CreateAction.do';
    document.forms[0].submit();
    }
    et pour le bouton Delete: la méthod appelé est DeleteForm:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function DeleteForm(){
    setOperation('deleteForm');
    document.forms[0].action='CreateAction.do';
    document.forms[0].submit();
    }
    Et enfin dans la classe CreateAction j'ai défini les deux méthodes "addForm" et "deleteForm".
    Le problème est que le dispatch ne se fait pas.
    Quelque soit le bouton sur lequel je clique, c'est la méthode proceedAction qui est appelé et pas "addForm" ou "deleteForm".
    J'arrive pas trop à voir où je fais une erreur, merci d'avance à tout ceux qui pourront m'éclairer quant à l'utilisation du DispatchAction notamment dans mon cas, où il y a un changement d'action.

  2. #2
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    Montre voir ton struts-config.xml ainsi que tes classes DsiplayAction et CreateAction

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Alors dans mon struts-config.xml j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <action path="/DisplayISPAction" input="/jsp/errorFullPage.jsp"
    			type="presentation.actions.raise.DisplayISPAction"
    			name="raiseActionForm" attribute="bean" scope="request" parameter="operation"
    			validate="true">
    			<forward name="success" path="/jsp/raise/displayRaise.jsp"/>
    		</action>			
    <action path="/CreateISPAction" input="/jsp/errorFullPage.jsp"
    			type="presentation.actions.raise.CreateISPAction"
    			name="raiseActionForm" attribute="bean" scope="request" parameter="operation"
    			validate="true">
    			<forward name="success" path="/jsp/raise/displayRaise.jsp" contextRelative="true" />
    		</action>
    et voici en partie le code associé à mes deux classes :
    POur le DisplayAction:
    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
     
    protected ActionForward proceedAction(ActionMapping pMapping,
    			ActionForm pForm, HttpServletRequest pRequest,
    			HttpServletResponse pResponse) throws GlobalException {
     
    		String lsPrefixe = "Class = " + this.getClass().getName()
    				+ ", Method  = proceedAction --> ";
    		if (LOGGER.isDebugEnabled())
    		{
    			LOGGER.debug(lsPrefixe + "BEGIN proceedAction");
    		}
     
    		// Initialisation
    		// Cast form bean
    		RaiseActionForm lFormBean = (RaiseActionForm) pForm;
     
    		// Create technical object :
    		PortletDataObject lPDO = createPortletDataObjet(true, pRequest);
     
    		//////////////////// BEGIN CONTEXT/////////////////////////////////
    		// Context management : get list of Item selected and expanded
    		// Manage the context on the creation of an Item : use the generic
    		// method defined in GenericAction
    		lPDO = manageContextOnStrutsAction(lPDO, lFormBean);
    		/////////////////////// END //////////////////////////////////////
     
    		// Initialize the Bean with context value from property or PortletDataObject
    		lFormBean = initializeBean(lFormBean, lPDO);
     
    		// Complete the bean with information according to the role of the user
    		lFormBean = completeBeanAccordingToRole(lFormBean, lPDO);
     
    		// Build all lists contained in the JSP
    		buildLists(lFormBean, lPDO, false);						
     
    		// On calcule la redirection		
    		ActionForward lForward;
    		lForward = pMapping.findForward(sMAPPING_SUCCESS);
     
    		if (LOGGER.isDebugEnabled())
    		{		
    			LOGGER.debug(lsPrefixe + "END proceedAction ");
    		}
    		// on redirige vers la jsp ou l'action déterminé au cours du cheminement
    		// de
    		// l'action
    		return lForward;
    	}
    et pour la classe CreateISPAction:
    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
     
    protected ActionForward saveDraftRaiseForm(ActionMapping pMapping,
    			ActionForm pForm, HttpServletRequest pRequest,
    			HttpServletResponse pResponse) throws GlobalException {
     
    		String lsPrefixe = "Class = " + this.getClass().getName()
    				+ ", Method  = proceedAction --> ";
    		if (LOGGER.isDebugEnabled())
    		{
    			LOGGER.debug(lsPrefixe + "BEGIN saveDraftRaiseForm");
    		}
    // Redirection setting
    		ActionForward lForward;
    		// On calcule la redirection
    		lForward = pMapping.findForward(sMAPPING_SUCCESS);
     
    		if (LOGGER.isDebugEnabled())
    		{			
    			LOGGER.debug(lsPrefixe + "END saveDraftRaiseForm ");
    		}
    		// on redirige vers la jsp ou l'action déterminé au cours du cheminement
    		// de
    		// l'action
    		return lForward;
    	}
     
    protected ActionForward postRaiseForm(ActionMapping pMapping,
    			ActionForm pForm, HttpServletRequest pRequest,
    			HttpServletResponse pResponse) throws GlobalException {
     
    		String lsPrefixe = "Class = " + this.getClass().getName()
    				+ ", Method  = postRaiseForm --> ";
    		if (LOGGER.isDebugEnabled())
    		{
    			LOGGER.debug(lsPrefixe + "BEGIN postRaiseForm");
    		}
    // Redirection setting
    		ActionForward lForward;
    		// On calcule la redirection
    		lForward = pMapping.findForward(sMAPPING_SUCCESS);
     
    		if (LOGGER.isDebugEnabled())
    		{			
    			LOGGER.debug(lsPrefixe + "END postRaiseForm ");
    		}
    		// on redirige vers la jsp ou l'action déterminé au cours du cheminement
    		// de
    		// l'action
    		return lForward;
    	}
    Voilà pour les infos demandées !!!

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Peux-tu montrer le code de la JSP ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Voici le code de ma jsp ...
    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
     
    <%@page import="application.fair.framework.StateRequest"%>
    <%-- Include taglibs ------------- --%>
     
    <%@ include file="../fragments/taglibs.jsp"%>
    <%@ taglib uri="/WEB-INF/fairtaglib-html.tld" prefix="fairHtml"%>
     
    <%-- Include head ------------- --%>
    	<%@ include file="../fragments/headBody.jsp"%>
    <script LANGUAGE="JavaScript">
    function setOperation(valeur){	
        document.forms[0].operation.value=valeur;
    }
     
    function PostRaiseForm() {	
    		setOperation('postRaiseForm');	
    		document.forms[0].action = "CreateISPAction.do";			
    		document.forms[0].submit();			
    }
     
    function SaveDraftRaiseForm() {		
    		setOperation('saveDraftRaiseForm');	
    		document.forms[0].action = "CreateISPAction.do";			
    		document.forms[0].submit();					
    }
     
    <html:form method="POST" action="/DisplayISPAction.do" >
     
    	<html:hidden property="operation" value="aucune"/>
              <table>
                 <tr>
    <td align="left" valign="middle" colspan="1" width="20%"><a href="javascript:SaveRaiseForm();"><img src="<bean:write name="bean" property="imageServerURI"/>plumtree/common/custom/aedk/img/button_save.gif"/></a>&nbsp;	</td>
    <td colspan="1" width="30"> &nbsp;</td>
    <td align="center" valign="middle" colspan="1"  width="20%">				
       <a href="javascript:PostRaiseForm();"><img src="<bean:write name="bean" property="imageServerURI"/>plumtree/common/custom/aedk/img/bout_post.gif"/></a>&nbsp;&nbsp;&nbsp;&nbsp;	</td>	
    </tr>
    </table>
    </html:form>

  6. #6
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    dans ta jsp, apres avoir modifier l action, su tu fais
    alert(document.forms[0].action).

    Tu obtiens quoi ?

    tes classes DisplayIspAction et CreateIspAction etendent quoi ?

  7. #7
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Juste pour vérifier :

    Tu as 2 classes qui étendent DispatchAction
    - DisplayISPAction
    - CreateISPAction

    Dans CreateISPAction, tu as 2 méthodes
    - addForm
    - deleteForm
    la signature de ces 2 méthodes étant public ActionForward addForm(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { ... }

    par défaut, tu utilises DisplayISPAction mais quand tu veux ajouter tu modifies l'action du formulaire et tu positionnes 'operation' à 'addForm' ou 'deleteForm'...

    Bon, c'est un peu surprenant comme façon de faire, j'aurais mis les différentes méthodes dans la même classe, mais soit, ça doit fonctionner aussi.
    J'ai modifié une de mes pages pour le test et c'est OK. La différence, c'est que je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    document.forms[0].action = "<%=request.getContextPath()%>/listeAnomalies.do";
    document.forms[0].action.value = "load";
    document.forms[0].submit();
    (J'utilise une variable 'action' là où tu as operation)

    Ton problème doit venir du fait qu'il ne trouve pas l'url et que ton paramétrage le renvoie sur DisplayISPAction. Utilises <%=request.getContextPath()%>, ça devrait résoudre le problème...

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Mes deux classes DisplayISPAction et CreateISPAction héritent d'une même classe abstraite GenericAction qui hérite de la classe DispatchAction.
    Et quand je fais alert(document.forms[0].action) dans ma JSP après avoir modifier l'action j'obtient bien : CreateISPAction.jsp avec l'url complète !!!

  9. #9
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Tu veux dire CreateISPAction.do je présume, pas .jsp (???).

    Quand tu dis, l'url complète, ça veut dire quoi. D'après ton code, tu as 'CreateISPAction.do', c'est tout...
    Il manque le mnémonique de ton serveur (que te donnerait <%request...%>)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Oui je voulais dire CreateISPAction.do ...
    Quand je dis toute l'URL, c'est à dire avec la gateway qui va bien, ...
    mais l'url est correct, no problem ..
    G essayé ta méthode mais ça ne change rien ...
    En fait j'ai fait aussi un autre test, dans ma classe CreateISPAction, j'ai rajouté la méthode proceedAction ... et quand je clique sur mes boutons ... je passe dans la proceedAction de la classe CreateISPAction, donc la redirection sur une nouvelle action marche bien... donc le problème vient du fait qu'il ne comprend pas le dispatch et qu'il n'arrive pas à appeler les bonnes méthodes. Et là je vois pa

  11. #11
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    Et si tu ecris ton lien en dur comme avec operation comme parametre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CreateISPAction.do?operation=postRaiseForm

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Ta classe GenericAction définie une méthode execute ?
    Tu peux montrer le code de GenericAction ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Voici le corps de ma classe GenericAction :

    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
     
    public ActionForward execute(ActionMapping pMapping, ActionForm pForm,
    			HttpServletRequest pRequest, HttpServletResponse pResponse) {
     
    	    String lsPrefixe = "Class = GenericAction, Method  = execute --> ";
    		//Action forward
    		ActionForward lForward = null;
     
    		if (LOGGER.isDebugEnabled()){
    			LOGGER.debug(lsPrefixe + "BEGIN execute");
    		}
     
    		try {
    			//Set a default forward
    			lForward = pMapping.findForward(sMAPPING_ERROR);
     
    			GenericActionForm lGenericActionForm = (GenericActionForm) pForm;
     
     
    			String userAgent = pRequest.getHeader("User-Agent");
    			if ((userAgent != null) && (userAgent.indexOf("MSIE") != -1)){
    				lGenericActionForm.setNavigator("MSIE");
    			}else{
    				lGenericActionForm.setNavigator("OtherNavigator");
    			}
     
    			// Forward vers la prochaine action ou jsp
    			lForward = proceedAction(pMapping, pForm, pRequest, pResponse);
     
    		} catch (Exception e) {
    			LOGGER.error(lsPrefixe + "Error processing Action : ", e);
    			// Error list
    			ActionErrors lErrors = new ActionErrors();
    			// Error
    			ActionMessage lError;
     
    			String lMessagExpt = "Error processing Action";
    			String lMessagFinal = "<br>" + lMessagExpt + "<br>";
    			lError = new ActionMessage(ERROR_LABEL, lMessagFinal);
     
    			// Ajout de la nouvelle erreur
    			lErrors.add(ActionMessages.GLOBAL_MESSAGE, lError);
     
    			// Passage sur le formulaire
    			addErrors(pRequest, lErrors);
     
    			// On redirige vers la page d'erreur.
    			lForward = pMapping.findForward(sMAPPING_ERROR);
    		} catch (Throwable e) {
    			LOGGER.error(lsPrefixe + "Throwable processing Action : ", e);
    		} finally {
    			if (LOGGER.isDebugEnabled()){
    				LOGGER.debug(lsPrefixe + "END execute");
    			}
    		}		
    		return lForward;	
    	}
     
    protected abstract ActionForward proceedAction(ActionMapping pMapping,
    			ActionForm pForm, HttpServletRequest pRequest,
    			HttpServletResponse pResponse) throws Exception;

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    OK, c'est normal alors.
    Dans GenericAction, tu fais ceci :
    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
     
        public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception 
        {
            // Récupère le nom de la variable pour l'action
            String lc_parameterName = mapping.getParameter();
     
            if (lc_parameterName!=null) 
            {
                // Récupère la valeur actuelle de l'action et interdit un appel par execute ou perform
                String lc_methodName = request.getParameter(lc_parameterName);
                if (lc_methodName != null && ("execute".equals(lc_methodName) || "perform".equals(lc_methodName))) 
                {
                        throw new IllegalArgumentException("illegal parameter");
                }
     
    ... le code générique ... (mais pas la ligne avec proceedAction)
     
            }
     
            ActionForward forward = super.execute(mapping, form, request, response);
    ... 
        }
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    Le probleme est qu'en faisant comme ça .. l'éxècute de GenericAction n'appelle plus la méthode proceedAction et j'ai dans mon application, une trentaine d'autres Action qui héritent de GenericAction et qui surchage la méthode proceedAction, comment faire pour ne pas tout bouleverser ????

  16. #16
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    En fait, les pages qui mettent "proceedAction" dans ta variable "operation" enverront vers cette méthode.
    Je ne comprends pas bien ton problème. Quand tu mets "addForm" dans "operation", c'est bien pour appeler la méthode "addForm" alors pourquoi veux-tu que ça appelle "proceedAction" ? (on ne peut pas appeller une liste de méthodes)
    Si tu as du code commun à toutes tes actions, tu peux le mettre au niveau "execute" de GenericAction.
    Si tu veux un défaut, rien ne t'empeche de faire un appel à "proceedAction" si "operation" n'est pas renseigné
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    J'ai mis en place ta méthode avec si le parameter est null, j'appelle mes proceedAction, sinon j'appelle ma méthode super.execute() ... ça a l'air de faire avancer le schmilblick mais maintenant j'ai cette exception :
    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
     
    <ERROR Class = GenericAction, Method  = execute --> Error processing Action :  
    <java.lang.NoSuchMethodException: com.airbus.collaboration.application.fair.presentation.actions.raise.CreateISPAction.postRaiseForm(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
    <	at java.lang.Class.getMethod(Class.java:986)
    <	at org.apache.struts.actions.DispatchAction.getMethod(DispatchAction.java:324)
    <	at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:264)
    <	at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:196)
    <	at com.airbus.collaboration.application.fair.presentation.actions.GenericAction.execute(GenericAction.java:283)
    <	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
    <	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
    <	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
    <	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
    <	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    <	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    <	at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
    <	at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
    <	at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
    <	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6718)
    <	at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    <	at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    <	at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
    <	at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
    <	at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
    <	at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
    <DEBUG Class = GenericAction, Method  = execute --> END execute

  18. #18
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    ta methode postRaiseForm est protected ?
    Elle n est pas accessible dans ce cas.

  19. #19
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Tu as codé un truc dans le genre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if ( lc_parameterName == null || lc_methodName == null ) forward = proceedAction(...)
    else forward = super.execute(...);
    (sinon, peux-tu montrer ?)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 20
    Par défaut
    ok c'était ça ... j'ai mis ma méthode en public et c ok .. je passe dedans maintenant ...
    merci bcp. pour le coup de main !!!
    Je passe la discuss. en Résolu !!!
    merci encore !!!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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