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 :

struts erreur javax.servlet.ServletException


Sujet :

Struts 1 Java

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2007
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 18
    Points : 14
    Points
    14
    Par défaut struts erreur javax.servlet.ServletException
    Salut,
    Je suis en train de développer ma premiere application avec struts sous eclipse 3.2.J'ai configuré le fichier struts-config.xml et web.xml de mon application.

    struts-config.xml:

    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
    "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
    <action-mappings>
    <action path="/Welcome" forward="/vues/auth.jsp" />
    <action path="/accueil" parameter="/vues/auth.jsp" type="org.apache.struts.actions.ForwardAction" />
    </action-mappings>
    </struts-config>


    web.xml:

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
    <param-name>config</param-name>
    <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
    <welcome-file>vues/auth.jsp</welcome-file>
    </welcome-file-list>
    </web-app>

    et la page auth.jsp est un simple formulaire pour authentification.

    quand je tape l'URL http://localhost:8080/smsc/Welcome.do , j'obtiens la page auth.jsp mais quand je lance http://localhost:8080/smsc/accueil.do, j'obtiens l'erreur suivante:

    description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.

    exception

    javax.servlet.ServletException: L'exécution de la servlet a lancé une exception


    cause mère

    java.lang.NoSuchMethodError: org.apache.struts.config.ForwardConfig.setContextRelative(Z)V
    org.apache.struts.actions.ForwardAction.execute(ForwardAction.java:103)
    org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:53)
    org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:64)
    org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:446)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    Merci d'avance pour votre aide.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 37
    Points : 29
    Points
    29
    Par défaut
    je suis "très" débutant en struts, mais je veux te donner une suggestion :

    Dans ton struts-config.xml :

    je ne sais pas si on peut configurer la même page deux fois, alors enlève :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <action path="/Welcome" forward="/vues/auth.jsp" />
    et vérifie si çà ne marche pas encore .

    autre chose :

    dans les tutoriaux que j'ai vu : les balise <action > des pages jsp ont la syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <action
      path="/le_nom"
      parameter="/le_path"
      type="org.apache.struts.actions.ForwardAction"
    />
    Alors fais ces petits changement et dis nous si çà marche. ( je l'espère bien )

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 311
    Points : 9 524
    Points
    9 524
    Billets dans le blog
    1
    Par défaut
    Tu fais une confusion, l'attribut "parametre" est utilisé pour nommer le champ du formulaire qui contiendra le nom de la méthode à appeler dans un contrôleur étendant "DispatchAction", pas pour mettre un nom de page.
    Le paramétrage standard d'une action est le suivant :
    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
     
    ...
    <form-beans>
          <form-bean name="UsersListForm" type="com.clemessy.struts.user.UsersListForm"/>
    </form-beans>
    ...
    <action-mappings>
    ...
    <action name="UsersListForm" <-- nom de la définition de formulaire associé
               parameter="fonction"  <-- comme dit avant (DispatchAction)
               path="/usersList"  <-- le lien avec l'action dans le formulaire (<form action="/userList"...>
               scope="session"  <-- le scope utilisé pour le formulaire (request/session)
               type="com.clemessy.struts.user.UsersListAction">  <-- la classe du contrôleur
     
           <forward name="default" path="modele.user.list"/> <-- le routage se fait en fonction du retour du contrôleur (return mapping.findForward("default"))
           <forward name="error" path="modele.error"/>
    </action>
    ...
    </action-mappings>
    J'espère que ces quelques explications t'aideront à avancer...

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/06/2010, 10h23
  2. [Framework] erreur springframework javax.servlet.ServletException
    Par molesqualeux dans le forum Spring
    Réponses: 3
    Dernier message: 23/03/2010, 22h58
  3. l'erreur javax.servlet.ServletException: No collection found
    Par freestyler1982 dans le forum Struts 1
    Réponses: 9
    Dernier message: 12/05/2009, 16h58
  4. Erreur dans la servlet(javax.servlet.ServletException)
    Par skudersky dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 06/03/2009, 08h37
  5. Réponses: 1
    Dernier message: 17/10/2007, 09h31

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