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 :

Probleme d'acces a une base de données


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 78
    Par défaut Probleme d'acces a une base de données
    bonjour ts le monde , Svp j'essai d'acceder a une base Mysql avec Struts ,
    quand je demande ma page http://localhost:8080/Forum/liste/
    j'ai l'erreur suivante:

    Etat HTTP 404 - Servlet action n'est pas disponible.
    --------------------------------------------------------------------------
    type Rapport d'état
    message Servlet action n'est pas disponible.
    description La ressource demandée (Servlet action n'est pas disponible.) n'est pas disponible.
    --------------------------------------------------------------------------Apache Tomcat/5.5.20
    je crois que l'erreur me vient de la section data-source parceq aucune des actions ne marchent que si je supprimer cette section data-source

    Mon fichier Struts-config.xml :
    Code xml : 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
    <struts-config>
    <data-sources>
    <data-source key="dbarticles">
    <set-property property="driverClass" value="com.mysql.jdbc.Driver"></set-property>
    <set-property property="url" value="jdbc:mysql://localhost/dbarticles"></set-property>
    <set-property property="user" value="admarticles"></set-property>
    <set-property property="password" value="mdparticles"></set-property>
    <set-property property="minCount" value="2"></set-property>
    <set-property property="maxCount" value="5"></set-property>
    </data-source>
    </data-sources>
     
    <action-mappings>
     
    <action 
    path="/liste" 
    type="forum.FormulaireAction">
    <forward name="afficherListeArticles" path="/vues/listarticles.jsp"/>
    <forward name="afficherErreurs" path="/vues/erreurs.jsp"/>
    </action>
    <action
    path="/test"
    parameter="/vues/listearticles.jsp"
    type="org.apache.struts.actions.ForwardAction"
    />
    <action
    path="/v1"
    parameter="/vues/vue1.jsp"
    type="org.apache.struts.actions.ForwardAction"
    />
     
    </action-mappings>
    <message-resources parameter="istia.st.struts.articles.ApplicationResources"
    null="false" />
    </struts-config>
    ---------------------------------------
    web.xml classiq:
    Code xml : 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
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <web-app>
     
    <welcome-file-list>
        <welcome-file>/vues/conn.html</welcome-file>
        </welcome-file-list>
     
    <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>
    </web-app>
    ---------------------------------------
    listeArticlesAction.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
    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
    package istia.st.struts.articles; 
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.Statement;
    import java.util.ArrayList;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.sql.DataSource;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionError;
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public class ListeArticlesAction extends Action {
    //Struts par la pratique - Serge Tahé, université d'Angers 125/134
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException {
    // lit le contenu de la table articles d'une connexion
    // réalisée à l'init du contexte
    // on récupère a source de données dbarticles
    DataSource dataSource = this.getDataSource(request, "dbarticles");
    if (dataSource == null) {
    // la source de données n'a pas pu être créée
    ActionErrors erreurs = new ActionErrors();
    erreurs.add("dbarticles", new ActionError("erreur.dbarticles",
    "La source de données n'a pu être créée"));
    this.saveErrors(request, erreurs);
    return mapping.findForward("afficherErreurs");
    }
    // ici la source de données existe - on l'exploite
    Connection connexion = null;
    Statement st = null;
    ResultSet rs = null;
    String requête = null;
    ArrayList alArticles = new ArrayList();
    // on gère les erreurs
    try {
    // obtenir une connexion
    connexion = dataSource.getConnection();
    // préparer la requête SQL
    requête = "select code, nom, prix, stockActuel, stockMinimum from articles order by nom";
    // l'exécuter
    st = connexion.createStatement();
    rs = st.executeQuery(requête);
    // exploiter les résultats
    while (rs.next()) {
    // enregistrer la ligne courante
    alArticles.add(new String[] { rs.getString("code"),
    rs.getString("nom"), rs.getString("prix"),
    rs.getString("stockactuel"), rs.getString("stockMinimum") });
    // ligne suivante
    } //while
    // libérer les ressources
    rs.close();
    st.close();
    } catch (Exception ex) {
    // des erreurs se sont produites
    ActionErrors erreurs = new ActionErrors();
    erreurs.add("dbarticles", new ActionError("erreur.dbarticles"));
    this.saveErrors(request, erreurs);
    return mapping.findForward("afficherErreurs");
    } finally {
    // on libère la connexion
    try {
    connexion.close();
    } catch (Exception ignored) {
    }
    }
    // c'est bon
    request.setAttribute("listArticles", alArticles);
    return mapping.findForward("afficherListeArticles");
    } //execute
    } //classe
    ========================================
    Merci bq d'avance si vous avez une idee !!

  2. #2
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 42
    Par défaut
    tu ne peux pas nous copier toute la trace de l'erreur

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 78
    Par défaut
    Bonjour
    c'est tout ce que j'ai comme erreur, c'est la premiere section de code que je vous ai envoye !! merci

  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    Bonjour,

    Je rencontre le même probleme, donc est il possible de donner la solution

    Cordialement

  5. #5
    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
    Quelle version de Struts utilises-tu ?
    A partir de la 1.3, tu ne peux plus définir la datasource dans le struts-config.xml.
    Il y a déjà plusieurs discussions à ce sujet sur le forum, comme par exemple celle-là, dans laquelle tu trouveras plusieurs liens pour te guider.

Discussions similaires

  1. probleme d import dans une base de données
    Par calimero642 dans le forum SGBD
    Réponses: 12
    Dernier message: 05/07/2006, 14h19
  2. [Interbase] accée a une base de donnée Distant
    Par touhami dans le forum Bases de données
    Réponses: 6
    Dernier message: 11/06/2006, 11h49
  3. Accés a une base de donnée sous trouvant sur un PC distant
    Par haganidjamel dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 15/03/2006, 09h38
  4. Problème d'accès à une base LDAP
    Par Longrais dans le forum Réseau
    Réponses: 7
    Dernier message: 30/01/2006, 11h23
  5. Réponses: 13
    Dernier message: 11/08/2004, 11h06

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