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 2 Java Discussion :

Accès aux ressources par l'interface SessionAware


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de mumu27
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 213
    Par défaut Accès aux ressources par l'interface SessionAware
    bonjour,

    j'essaye de faire fonctionner mon programme de saisie de l'identifiant et du mot de passe, mais j'ai ce message d'erreur:

    Etat HTTP 404 -

    --------------------------------------------------------------------------------

    type Rapport d'état

    message

    description La ressource demandée () n'est pas disponible.

    Voici le fichier struts.xml:

    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
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
    	"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    	"http://struts.apache.org/dtds/struts-2.0.dtd">
    <struts>
    	<constant name="struts.enable.DynamicMethodInvocation"
    value="false" />
    	<constant name="struts.devMode" value="true" />
    	<package name="exemple03" namespace="/" extends="struts-default">
    		<default-action-ref name="Ajouter_Client" />
    		<action name="Ajouter_Client">
    			<result>/jsp/AjouterClient.jsp</result>
    		</action>
     
    		<action name="ValiderAjouter_Client"
    		class="exemple03.Client" method="ajouter">
    		<result name="input">/jsp/AjouterClient.jsp</result>
    		<result name="success">/jsp/AfficherClient.jsp</result>
    		</action>
     
    		<action name="Supprimer_Client" class="exemple03.Client" method="supprimer">
    		<result name="success">/jsp/AfficherClient.jsp</result>
    		</action>
    	</package>
    </struts>
    Voici le fichier AjouterClient.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
    <html>
    <head>
    <title>Ajouter un client </title>
    <style type="text/css">@import url(css/styles.css);</style>
    </head>
    <body>
    <div id="enveloppe">
    	<h3>Ajouter un client</h3>
    	<form method="post" action="ValiderAjouter_Client.action">
    	<table>
    	<tr>
    		<td>Identifiant:</td>
    		<td><input type="text" name="identifiant" value="${identifiant}"/></td>
    	</tr>
    	<tr>
    		<td>Mot de passe:</td>
    		<td><input type="text" name="motdepasse" value="${motdepasse}"/></td>
    	</tr>
    	<tr>
    		<td colspan="2" align="center"><input type="submit" value="Ajouter le client"/></td>
    	</tr>
    	</table>
    	</form>
    </div>
    </body>
    </html>
    Voici le fichier AfficherClient.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
    <%@ taglib prefix="s" uri="/struts-tags" %>
    <html>
    <head>
    <title>Afficher le client</title>
    <style type="text/css">@import url(css/styles.css);</style>
    </head>
    <body>
    <s:debug/>
    <div id="enveloppe">
    	<p>
    		<h4>Informations sur le client:</h4>
    		Identifiant : <s:property value="#session.identifiantsession"/><br/>
    		Mot de passe : <s:property value="#session.motdepassesession"/><br/>
    	</p>
    	<a href="Supprimer_Client.action">Supprimer le client</a>
    </div>
    </body>
    </html>
    Voici le fichier Client.java:

    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
    package example03;
     
    import java.util.Map;
     
    import org.apache.struts2.interceptor.SessionAware;
    import com.opensymphony.xwork2.ActionSupport;
    import com.opensymphony.xwork2.util.profiling.UtilTimerStack;
     
    @SuppressWarnings("serial")
    public class Client extends ActionSupport implements SessionAware {
     
    	private Map<Object, Object> session;
        private Object someObjectFromSession;
        private String identifiant;
    	private String motdepasse;
     
    		public String getIdentifiant() {
    			return identifiant;
    		}
    		public void setIdentifiant(String identifiant) {
    			this.identifiant = identifiant;
    		}
     
    		public String getMotdepasse() {
    			return motdepasse;
    		}
     
    		public void setMotdepasse(String motdepasse) {
    			this.motdepasse = motdepasse;
    		}
     
        	public String ajouter() {
     
    			someObjectFromSession = session.put("identifiantsession", identifiant);
    			someObjectFromSession = session.put("motdepassesession", motdepasse);
    			System.out.println(session.get("identificationsession"));
    			return SUCCESS;
    		}
     
    		public String supprimer() {
    			someObjectFromSession = session.remove("identifiantsession");
    			someObjectFromSession = session.remove("motdepassesession");
    			System.out.println(session.get("identificationsession"));
    			return SUCCESS;
    		}
    		@Override
    		public void setSession(Map session) {
    			this.session = session;
     
    		}
     
    }
    J'avoue que je ne sais pas trop comment créer le fichier Client.java, je suppose que les problèmes viennent de là. Notamment, comment récupérer les valeurs des attributs de la requête lancé par l'action ValiderAjouter_Client.action.

    J'essaye de tester l'application par: http://localhost/exemple03/Ajouter_Client.action

    Merci d'avance pour votre aide.

    Mumu27

  2. #2
    Membre confirmé Avatar de Altenide
    Homme Profil pro
    Formateur en technologies web
    Inscrit en
    Décembre 2008
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Formateur en technologies web
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2008
    Messages : 129
    Par défaut
    Bonjour, quel est le message d'erreur dans la console ?

    J'ai l'impression que c'est juste un pb de namespace.

    créer une page index.jsp ( avec un h1 Eureka ! ) à la racine de ta WebApp.

    et change :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <action name="ValiderAjouter_Client"
            class="exemple03.Client" method="ajouter">
            <result name="input">/jsp/AjouterClient.jsp</result>
            <result name="success">/jsp/AfficherClient.jsp</result>
            </action>
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <action name="ValiderAjouter_Client"
            class="exemple03.Client" method="ajouter">
            <result name="input">/jsp/AjouterClient.jsp</result>
            <result name="success">index.jsp</result>
            </action>

  3. #3
    Membre éclairé Avatar de mumu27
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 213
    Par défaut
    Bonjour,

    merci pour le message, mais normalement il n'y a pas besoin de fichier index.jsp pour cet exemple. J'ai déjà essayé un exemple précédent sans index.jsp et cela fonctionne très bien. Je fournis à tître d'information le fichier web.xml:

    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
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_9" version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLoction="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
     
    	<display-name>Struts Blank</display-name>
     
    	<filter>
    		<filter-name>struts2</filter-name>
    		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher
    		</filter-class>
    	</filter>
     
    	<filter-mapping>
    		<filter-name>struts2</filter-name>
    		<url-pattern>/*</url-pattern>
    	</filter-mapping>
     
    </web-app>
    Désormais, j'ai Eclipse IDE for Java EE Developers, cependant je n'arrive toujours pas à démarrer mon exemple.

    Voici l'arborescence de fichier:

    |JAX-WS Web Services
    |Java Resources
    ||src
    |||example03
    ||||Client.java
    |||log4j.properties
    |||struts.xml
    |JavaScript Resources
    |build
    |WebContent
    ||css
    |||styles.css
    ||jsp
    |||AfficherClient.jsp
    |||AjouterClient.jsp
    ||META-INF
    |||MANIFEST.MF
    ||WEB-INF
    |||lib
    |||web.xml

    En fait je ne suis pas sûr de l'installation de mes fichiers dans les répertoires. De plus j'ai essayé de démarrer mon appli à partir du fichier jsp AjouterClient.jsp, en cliquant droit dessus, je sélectionne Run as-> Run on server et voici le message d'erreur que j'obtiens:

    Etat HTTP 404 - /exemple03/jsp/AjouterClient.jsp

    --------------------------------------------------------------------------------

    type Rapport d''état

    message /exemple03/jsp/AjouterClient.jsp

    description La ressource demandée (/exemple03/jsp/AjouterClient.jsp) n'est pas disponible.


    --------------------------------------------------------------------------------

    Apache Tomcat/7.0.16
    Je ne suis pas sûr que ce soit la bonne méthode pour démarrer l'application. Pouvez-vous me dire comment je pourrais démarrer l'appli correctement svp.

    Merci d'avance.

    mumu27!

  4. #4
    Membre éclairé Avatar de mumu27
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 213
    Par défaut
    Bonjour,

    j'ai trouvé le problème, le package s'écrivait "example" et il fallait l'écrire comme le projet "exemple".

    mumu27

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. acces aux ressources par une variable?
    Par lowfee dans le forum VB.NET
    Réponses: 17
    Dernier message: 09/11/2010, 19h47
  2. Accès aux tables par les users
    Par BRUN NICOLAS dans le forum Sécurité
    Réponses: 2
    Dernier message: 13/02/2007, 10h58
  3. Zone de liste, accès aux propriétés par code
    Par AndréPe dans le forum VBA Access
    Réponses: 3
    Dernier message: 10/02/2007, 10h41
  4. [WPF] Pb accès aux ressources
    Par hepsilonz dans le forum Framework .NET
    Réponses: 1
    Dernier message: 13/01/2007, 01h13
  5. Accès aux ressources
    Par salber dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 10/11/2006, 21h59

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