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

EDI/Outils Discussion :

Probleme d'utilisation de iBatis.net


Sujet :

EDI/Outils

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2003
    Messages : 46
    Points : 51
    Points
    51
    Par défaut Probleme d'utilisation de iBatis.net
    Bonjour,

    Je test ibatis, plus précisement la partie Data mapper de iBatis.net

    J'ai dévéloppé une petite application console pour tester, lorsque la table de la base de donnée dont je veux récupérer les infos et vide, l'application fonctionne correctement, par contre, lorsque cette table contient des données l'application génére une exception de type:

    System.MethodAccessException: firstIbatis.Membre..ctor()

    Vous trouverez ci dessus le code de l'appli ainsi que les différentes classes et les fichiers de configurations.

    Je dois surement avoir une erreur quelque part mais je ne trouve pas ou !!!
    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
     
    Fonction MAIN:
     
            static void Main(string[] args)
            {
                try
                {
                    System.Console.WriteLine(Mapper.Instance().QueryForList("SelectAllMembres", null).Count);
                }
                catch (Exception e)
                {
                    System.Console.WriteLine(e.ToString());
                }
                System.Console.Read();
            }
    Classe Membre
    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
     
    namespace firstIbatis
    {
        class Membre
        {
            private int _id;
     
            public int Id
            {
                get { return _id; }
                set { _id = value; }
            }
     
            private String _nom;
     
            public String Nom
            {
                get { return _nom; }
                set { _nom = value; }
            }
     
            private String _prenom;
     
            public String Prenom
            {
                get { return _prenom; }
                set { _prenom = value; }
            }
        }
    }
    Fichier membre.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
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    <?xml version="1.0" encoding="utf-8" ?>
    <sqlMap namespace="Membre" 
    		xmlns="http://ibatis.apache.org/mapping" 
    		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     
    	<alias>
    		<typeAlias alias="Membre" type="firstIbatis.Membre"/>
    	</alias>
     
    	<resultMaps>
    		<resultMap id="SelectAllMembres" class="Membre">
    			<result property="Id" column="id"/>
    			<result property="Nom" column="nom"/>
    			<result property="Prenom" column="prenom"/>
    		</resultMap>
    	</resultMaps>
     
    	<statements>
    		<select id="SelectAllMembres" resultMap="SelectAllMembres">
    			select id,
    			nom,
    			prenom
    			from membres
    		</select>
    	</statements>
     
    	<parameterMaps>
    		<parameterMap id="update-generate-membre">
    			<parameter property="Nom" column="nom"/>
    			<parameter property="Prenom" column="prenom"/>
    		</parameterMap>
    	</parameterMaps>
    </sqlMap>
    et enfin le SqlMap.config
    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
     
    <?xml version="1.0" encoding="utf-8" ?>
    <sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    	<settings>
    		<setting useStatementNamespaces="false"/>
    		<setting cacheModelsEnabled="true"/>
    		<setting validateSqlMap="false"/>
    	</settings>
     
    	<database>
    		<provider name="MySql5"/>
    		<dataSource name="firstIbatis" connectionString="Server=localhost;Database=firstIbatis;User ID=root;Password="/>
    	</database>
     
    	<sqlMaps>
    		<sqlMap resource="Membre.xml"/>
    	</sqlMaps>
    </sqlMapConfig>
    Si quelqu'un utilise iBatis et peux m'expliquer mon erreur ... merci d'avance

    Cereal

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2003
    Messages : 46
    Points : 51
    Points
    51
    Par défaut
    J'ai trouvé la solution à mon probléme.
    Il suffit d'ajouter le mot clef public devant class, lors de la declaration de la classe Membre

    Le fichier Membre.cs devient donc:
    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
     
     
    using System;
    using System.Collections.Generic;
    using System.Text;
     
    namespace firstIbatis
    {
        public class Membre
        {
            private int _id;
     
            public int Id
            {
                get { return _id; }
                set { _id = value; }
            }
     
            private String _nom;
     
            public String Nom
            {
                get { return _nom; }
                set { _nom = value; }
            }
     
            private String _prenom;
     
            public String Prenom
            {
                get { return _prenom; }
                set { _prenom = value; }
            }
     
            public override String ToString()
            {
                return "Membre N°"+this.Id+" Nom :"+this.Nom+" Prenom: "+this.Prenom;
            }
        }
    }

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/10/2011, 15h03
  2. Réponses: 1
    Dernier message: 18/07/2006, 16h44
  3. Probleme d'utilisation de directX 9 avec visual studio.net
    Par cranedoeuf dans le forum DirectX
    Réponses: 1
    Dernier message: 24/05/2004, 04h33
  4. [Debutant] probleme pour utiliser les classes d'un .jar
    Par pissek dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 12/05/2004, 18h21
  5. probleme de #include en C++ .NET
    Par CHIERA dans le forum MFC
    Réponses: 2
    Dernier message: 27/02/2004, 11h04

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