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

Hibernate Java Discussion :

[Débutant] ClassCastException après requête SQL


Sujet :

Hibernate Java

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut [Débutant] ClassCastException après requête SQL
    Je continue d'avancer, j'ai créé mes getters et setters pour éviter les exceptions. je tente maintenant de récupérer des éléments dans ma base grâce au code test 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
    20
    21
    22
    23
     
    public class Test {
     
    	 public static void main(String[] args)
    		throws HibernateException {
     
    		 Session session = HibernateUtil.currentSession();		 
    		 SQLQuery myQuery = session.createSQLQuery("select * from abonne");
     
    		 System.out.println("-----------> TAILLE : "+myQuery.list().size());
    		 for (int i=0;i<myQuery.list().size();i++) {
    			 Abonne abonne = (Abonne) myQuery.list().get(i);
    			 if (abonne != null) {
    				 System.out.println(abonne.getNom());
    			 } else {
    				 System.out.println("L'enregistrement est vide");
    			 }
    		 }
     
    		 HibernateUtil.closeSession();
     
    	 }
    }

    Malheureusement une exception est encore levée, cette-fois-ci au moment où je caste mon objet contenu dans ma "List". Voici l'exception :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object;
    	at hibernate.Test.main(Test.java:25)
    Je trouve très bizarre le nom de la classe qui n'arrive pas à caster pourquoi il y a-t-il "[L" dans le nom de la classe de type Object.
    Pour rappel, j'utlise MySQL/Hibernate/Tomcat/JSP sur Windows avec Eclipse 3.1.

    Merci d'avance de m'aider à supprimer cette exception.

  2. #2
    Membre expert
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Points : 3 401
    Points
    3 401
    Par défaut
    Et bien apparement c'est içi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Abonne abonne = (Abonne) myQuery.list().get(i);
    Il ne vaut mieux pas caster un objet comme ça, fait un test avant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(myQuery.list().get(i) instanceof Abonne) {/***}
    Si tu sors un élément d'une base de donnée, je doute que se soit un objet Java. Créer plutôt un nouvel objet Abonne à partir des infos de la base de données.

  3. #3
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    Merci pour ta réponse, mais dans ce cas-là avec Hibernate comment me conseilles-tu de récupérer mes éléments, car les logs Hibernate me donnent bien les informations contenues dans ma base (cf dans la partie code de la ligne 3454 à 3469 - j'en ai enlevé un bout) :

    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
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
     
    1000 [main] INFO org.hibernate.cfg.HbmBinder  - Mapping class: hibernate.Abonne -> abonne
    1016 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: id -> ABONNE_IDENT
    1047 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: nom -> nom
    1047 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: prenom -> prenom
    1063 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: mail -> mail
    1063 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: telephone -> telephone
    1063 [main] DEBUG org.hibernate.cfg.HbmBinder  - Mapped property: competences -> competences
    1063 [main] INFO org.hibernate.cfg.Configuration  - Configured SessionFactory: null
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - Preparing to build session factory with filters : {}
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - processing extends queue
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - processing collection mappings
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - processing native query and ResultSetMapping mappings
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - processing association property references
    1063 [main] DEBUG org.hibernate.cfg.Configuration  - processing foreign key constraints
    1313 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider  - Using Hibernate built-in connection pool (not for production use!)
    1313 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider  - Hibernate connection pool size: 20
    1313 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider  - autocommit mode: false
    1329 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider  - using driver: org.gjt.mm.mysql.Driver at URL: jdbc:mysql://localhost/intranet_rennes
    1329 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider  - connection properties: {user=root}
    1329 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - total checked-out connections: 0
    1329 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - opening new JDBC connection
    1813 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - created connection to: jdbc:mysql://localhost/intranet_rennes, Isolation Level: 4
    1813 [main] INFO org.hibernate.cfg.SettingsFactory  - RDBMS: MySQL, version: 4.1.9-max
    1813 [main] INFO org.hibernate.cfg.SettingsFactory  - JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-3.1.8 ( $Date: 2005/04/14 20:36:13 $, $Revision: 1.27.4.64 $ )
    1813 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - returning connection to pool, pool size: 1
    1891 [main] INFO org.hibernate.dialect.Dialect  - Using dialect: org.hibernate.dialect.MySQLDialect
    1907 [main] INFO org.hibernate.transaction.TransactionFactoryFactory  - Using default transaction strategy (direct JDBC transactions)
    1907 [main] INFO org.hibernate.transaction.TransactionManagerLookupFactory  - No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - Automatic flush during beforeCompletion(): disabled
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - Automatic session close at end of transaction: disabled
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - JDBC batch size: 15
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - JDBC batch updates for versioned data: disabled
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - Scrollable result sets: enabled
    1907 [main] DEBUG org.hibernate.cfg.SettingsFactory  - Wrap result sets: disabled
    1907 [main] INFO org.hibernate.cfg.SettingsFactory  - JDBC3 getGeneratedKeys(): enabled
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Connection release mode: auto
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Maximum outer join fetch depth: 2
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Default batch fetch size: 1
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Generate SQL with comments: disabled
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Order SQL updates by primary key: disabled
    1922 [main] INFO org.hibernate.cfg.SettingsFactory  - Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
    1938 [main] INFO org.hibernate.hql.ast.ASTQueryTranslatorFactory  - Using ASTQueryTranslatorFactory
    1938 [main] INFO org.hibernate.cfg.SettingsFactory  - Query language substitutions: {}
    1938 [main] INFO org.hibernate.cfg.SettingsFactory  - Second-level cache: disabled
    1938 [main] INFO org.hibernate.cfg.SettingsFactory  - Query cache: disabled
    1938 [main] INFO org.hibernate.cfg.SettingsFactory  - Optimize cache for minimal puts: disabled
    1954 [main] INFO org.hibernate.cfg.SettingsFactory  - Structured second-level cache entries: disabled
    1954 [main] DEBUG org.hibernate.exception.SQLExceptionConverterFactory  - Using dialect defined converter
    1969 [main] INFO org.hibernate.cfg.SettingsFactory  - Statistics: disabled
    1969 [main] INFO org.hibernate.cfg.SettingsFactory  - Deleted entity synthetic identifier rollback: disabled
    1969 [main] INFO org.hibernate.cfg.SettingsFactory  - Default entity-mode: pojo
    2079 [main] INFO org.hibernate.impl.SessionFactoryImpl  - building session factory
    2079 [main] DEBUG org.hibernate.impl.SessionFactoryImpl  - Session factory constructed with filter configurations : {}
    2079 [main] DEBUG org.hibernate.impl.SessionFactoryImpl  - instantiating session factory with properties: {java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition, sun.boot.library.path=D:\jre1.5.0_05\bin, java.vm.version=1.5.0_05-b05, hibernate.connection.username=root, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=;, java.vm.name=Java HotSpot(TM) Client VM, file.encoding.pkg=sun.io, user.country=FR, sun.os.patch.level=Service Pack 4, java.vm.specification.name=Java Virtual Machine Specification, user.dir=D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes, java.runtime.version=1.5.0_05-b05, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.endorsed.dirs=D:\jre1.5.0_05\lib\endorsed, os.arch=x86, java.io.tmpdir=C:\DOCUME~1\NLETUR~1\LOCALS~1\Temp\, line.separator=
    , java.vm.specification.vendor=Sun Microsystems Inc., user.variant=, os.name=Windows 2000, hibernate.cache.use_second_level_cache=false, sun.jnu.encoding=Cp1252, java.library.path=D:\jre1.5.0_05\bin;.;C:\WINNT\system32;C:\WINNT;D:\Perl\bin\;C:\PROGRA~1\Borland\Delphi5\Projects\Bpl;C:\PROGRA~1\Borland\Delphi5\Bin;D:\jre1.5.0_05\bin;D:\oracle\ora92\bin;.;%PATH_BURST_GENERATION%;d:\burst\dev\scripts;d:\burst\dev\commun\bin\debug;d:\burst\dev\serveur\bin\debug;d:\burst\dev\client\bin;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Microsoft Visual Studio 6\Common\VSS\win32;C:\Program Files\Microsoft Visual Studio 6\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio 6\VB98;C:\mysql\bin;C:\Program Files\Microsoft Visual Studio 6\VC98\Bin;C:\Program Files\Microsoft Visual Studio 6\VC98\Include;C:\VXIpnp\WinNT\Bin;D:\cvsnt;C:\Program Files\Bitvise Tunnelier;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\UltraEdit, java.specification.name=Java Platform API Specification, java.class.version=49.0, cache.use_second_level_cache=false, sun.management.compiler=HotSpot Client Compiler, os.version=5.0, user.home=C:\Documents and Settings\nleturluer, user.timezone=, java.awt.printerjob=sun.awt.windows.WPrinterJob, file.encoding=Cp1252, java.specification.version=1.5, hibernate.connection.driver_class=org.gjt.mm.mysql.Driver, java.class.path=D:\Tomcat 5.5\common\lib\commons-el.jar;D:\Tomcat 5.5\common\lib\jasper-compiler-jdt.jar;D:\Tomcat 5.5\common\lib\jasper-compiler.jar;D:\Tomcat 5.5\common\lib\jasper-runtime.jar;D:\Tomcat 5.5\common\lib\jsp-api.jar;D:\Tomcat 5.5\common\lib\naming-factory-dbcp.jar;D:\Tomcat 5.5\common\lib\naming-factory.jar;D:\Tomcat 5.5\common\lib\naming-resources.jar;D:\Tomcat 5.5\common\lib\servlet-api.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\bin;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\WebContent\WEB-INF\lib\mysql-connector-java-3.1.8-bin.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\ant-antlr-1.6.5.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\asm.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\asm-attrs.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\cglib-2.1.3.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\commons-collections-2.1.1.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\commons-logging-1.0.4.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\dom4j-1.6.1.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\hibernate3.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\jta.jar;D:\NLeTurluer\Sauvegarde\WorkSpace-Intranet\IntranetRennes\.deployables\IntranetRennes\WEB-INF\lib\log4j-1.2.11.jar, user.name=nleturluer, java.vm.specification.version=1.0, sun.arch.data.model=32, java.home=D:\jre1.5.0_05, hibernate.connection.url=jdbc:mysql://localhost/intranet_rennes, hibernate.dialect=org.hibernate.dialect.MySQLDialect, java.specification.vendor=Sun Microsystems Inc., user.language=fr, awt.toolkit=sun.awt.windows.WToolkit, java.vm.info=mixed mode, sharing, hibernate.cglib.use_reflection_optimizer=true, java.version=1.5.0_05, java.ext.dirs=D:\jre1.5.0_05\lib\ext, sun.boot.class.path=D:\jre1.5.0_05\lib\rt.jar;D:\jre1.5.0_05\lib\i18n.jar;D:\jre1.5.0_05\lib\sunrsasign.jar;D:\jre1.5.0_05\lib\jsse.jar;D:\jre1.5.0_05\lib\jce.jar;D:\jre1.5.0_05\lib\charsets.jar;D:\jre1.5.0_05\classes, java.vendor=Sun Microsystems Inc., file.separator=\, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, sun.cpu.endian=little, sun.io.unicode.encoding=UnicodeLittle, sun.desktop=windows, sun.cpu.isalist=}
    2907 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  - Static SQL for entity: hibernate.Abonne
    2922 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  -  Version select: select ABONNE_IDENT from abonne where ABONNE_IDENT =?
    2922 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  -  Snapshot select: select abonne_.ABONNE_IDENT, abonne_.nom as nom0_, abonne_.prenom as prenom0_, abonne_.mail as mail0_, abonne_.telephone as telephone0_, abonne_.competences as competen6_0_ from abonne abonne_ where abonne_.ABONNE_IDENT=?
    2922 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  -  Insert 0: insert into abonne (nom, prenom, mail, telephone, competences, ABONNE_IDENT) values (?, ?, ?, ?, ?, ?)
    2922 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  -  Update 0: update abonne set nom=?, prenom=?, mail=?, telephone=?, competences=? where ABONNE_IDENT=?
    2922 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister  -  Delete 0: delete from abonne where ABONNE_IDENT=?
    3001 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=?
    3001 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=?
    3001 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=? for update
    3001 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=? for update
    3047 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for action ACTION_MERGE on entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=?
    3047 [main] DEBUG org.hibernate.loader.entity.EntityLoader  - Static select for action ACTION_REFRESH on entity hibernate.Abonne: select abonne0_.ABONNE_IDENT as ABONNE1_0_0_, abonne0_.nom as nom0_0_, abonne0_.prenom as prenom0_0_, abonne0_.mail as mail0_0_, abonne0_.telephone as telephone0_0_, abonne0_.competences as competen6_0_0_ from abonne abonne0_ where abonne0_.ABONNE_IDENT=?
    3047 [main] DEBUG org.hibernate.impl.SessionFactoryObjectFactory  - initializing class SessionFactoryObjectFactory
    3063 [main] DEBUG org.hibernate.impl.SessionFactoryObjectFactory  - registered: 4028e5820f581a70010f581a74e40000 (unnamed)
    3063 [main] INFO org.hibernate.impl.SessionFactoryObjectFactory  - Not binding factory to JNDI, no JNDI name configured
    3063 [main] DEBUG org.hibernate.impl.SessionFactoryImpl  - instantiated session factory
    3063 [main] DEBUG org.hibernate.impl.SessionFactoryImpl  - Checking 0 named HQL queries
    3063 [main] DEBUG org.hibernate.impl.SessionFactoryImpl  - Checking 0 named SQL queries
    3204 [main] DEBUG org.hibernate.impl.SessionImpl  - opened session at timestamp: 11654142661
    3235 [main] DEBUG org.hibernate.engine.query.QueryPlanCache  - unable to locate native-sql query plan in cache; generating (select * from abonne)
    3266 [main] DEBUG org.hibernate.impl.SessionImpl  - SQL query: select * from abonne
    3266 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
    3266 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - opening JDBC connection
    3266 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - total checked-out connections: 0
    3266 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - using pooled JDBC connection, pool size: 0
    3266 [main] DEBUG org.hibernate.SQL  - select * from abonne
    3282 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - preparing statement
    3297 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open ResultSet (open ResultSets: 0, globally: 0)
    3313 [main] DEBUG org.hibernate.loader.Loader  - processing result set
    3329 [main] DEBUG org.hibernate.loader.Loader  - result set row: 0
    3329 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3329 [main] DEBUG org.hibernate.type.IntegerType  - returning '1' as column: ABONNE_IDENT
    3329 [main] DEBUG org.hibernate.type.StringType  - returning 'LUCAS' as column: ABONNE_NOM
    3329 [main] DEBUG org.hibernate.type.StringType  - returning 'REGIS' as column: ABONNE_PRENOM
    3329 [main] DEBUG org.hibernate.type.StringType  - returning '0299558888' as column: ABONNE_TELEPHONE
    3329 [main] DEBUG org.hibernate.type.StringType  - returning 'rlucas102@hotmail.com' as column: ABONNE_MAIL
    3329 [main] DEBUG org.hibernate.type.StringType  - returning '.NET, PHP, Java' as column: ABONNE_COMPETENCES
    3329 [main] DEBUG org.hibernate.loader.Loader  - result set row: 1
    3329 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3329 [main] DEBUG org.hibernate.type.IntegerType  - returning '2' as column: ABONNE_IDENT
    3329 [main] DEBUG org.hibernate.type.StringType  - returning 'JUIN' as column: ABONNE_NOM
    3329 [main] DEBUG org.hibernate.type.StringType  - returning 'Leclerc' as column: ABONNE_PRENOM
    3329 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_TELEPHONE
    3344 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_MAIL
    3344 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_COMPETENCES
    3344 [main] DEBUG org.hibernate.loader.Loader  - result set row: 2
    3344 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3344 [main] DEBUG org.hibernate.type.IntegerType  - returning '3' as column: ABONNE_IDENT
    3344 [main] DEBUG org.hibernate.type.StringType  - returning 'xxxxxxxr' as column: ABONNE_NOM
    3344 [main] DEBUG org.hibernate.type.StringType  - returning 'Nicolas' as column: ABONNE_PRENOM
    3344 [main] DEBUG org.hibernate.type.StringType  - returning '06xxxxxxxx' as column: ABONNE_TELEPHONE
    3344 [main] DEBUG org.hibernate.type.StringType  - returning 'nicolas.xxxxxxxxx@laposte.net' as column: ABONNE_MAIL
    3344 [main] DEBUG org.hibernate.type.StringType  - returning 'Java et Réseaux' as column: ABONNE_COMPETENCES
    3344 [main] DEBUG org.hibernate.loader.Loader  - done processing result set (3 rows)
    3344 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close ResultSet (open ResultSets: 1, globally: 1)
    3344 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
    3344 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - closing statement
    3360 [main] DEBUG org.hibernate.engine.StatefulPersistenceContext  - initializing non-lazy collections
    3360 [main] DEBUG org.hibernate.jdbc.JDBCContext  - after autocommit
    3360 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - aggressively releasing JDBC connection
    3360 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
    3360 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - returning connection to pool, pool size: 1
    -----------> TAILLE : 3
    3376 [main] DEBUG org.hibernate.engine.query.QueryPlanCache  - located native-sql query plan in cache (select * from abonne)
    3376 [main] DEBUG org.hibernate.impl.SessionImpl  - SQL query: select * from abonne
    3376 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
    3376 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - opening JDBC connection
    3376 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - total checked-out connections: 0
    3391 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - using pooled JDBC connection, pool size: 0
    3391 [main] DEBUG org.hibernate.SQL  - select * from abonne
    3391 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - preparing statement
    3391 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open ResultSet (open ResultSets: 0, globally: 0)
    3391 [main] DEBUG org.hibernate.loader.Loader  - processing result set
    3391 [main] DEBUG org.hibernate.loader.Loader  - result set row: 0
    3391 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3407 [main] DEBUG org.hibernate.type.IntegerType  - returning '1' as column: ABONNE_IDENT
    3407 [main] DEBUG org.hibernate.type.StringType  - returning 'LUCAS' as column: ABONNE_NOM
    3407 [main] DEBUG org.hibernate.type.StringType  - returning 'REGIS' as column: ABONNE_PRENOM
    3407 [main] DEBUG org.hibernate.type.StringType  - returning '0299558888' as column: ABONNE_TELEPHONE
    3407 [main] DEBUG org.hibernate.type.StringType  - returning 'rlucas102@hotmail.com' as column: ABONNE_MAIL
    3407 [main] DEBUG org.hibernate.type.StringType  - returning '.NET, PHP, Java' as column: ABONNE_COMPETENCES
    3407 [main] DEBUG org.hibernate.loader.Loader  - result set row: 1
    3407 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3407 [main] DEBUG org.hibernate.type.IntegerType  - returning '2' as column: ABONNE_IDENT
    3407 [main] DEBUG org.hibernate.type.StringType  - returning 'JUIN' as column: ABONNE_NOM
    3407 [main] DEBUG org.hibernate.type.StringType  - returning 'Leclerc' as column: ABONNE_PRENOM
    3407 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_TELEPHONE
    3407 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_MAIL
    3407 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_COMPETENCES
    3407 [main] DEBUG org.hibernate.loader.Loader  - result set row: 2
    3407 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3422 [main] DEBUG org.hibernate.type.IntegerType  - returning '3' as column: ABONNE_IDENT
    3422 [main] DEBUG org.hibernate.type.StringType  - returning 'xxxxxxxx' as column: ABONNE_NOM
    3422 [main] DEBUG org.hibernate.type.StringType  - returning 'Nicolas' as column: ABONNE_PRENOM
    3422 [main] DEBUG org.hibernate.type.StringType  - returning '06xxxxxxx' as column: ABONNE_TELEPHONE
    3422 [main] DEBUG org.hibernate.type.StringType  - returning 'nicolas.xxxxxxxxxx@laposte.net' as column: ABONNE_MAIL
    3422 [main] DEBUG org.hibernate.type.StringType  - returning 'Java et Réseaux' as column: ABONNE_COMPETENCES
    3422 [main] DEBUG org.hibernate.loader.Loader  - done processing result set (3 rows)
    3422 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close ResultSet (open ResultSets: 1, globally: 1)
    3422 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
    3422 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - closing statement
    3422 [main] DEBUG org.hibernate.engine.StatefulPersistenceContext  - initializing non-lazy collections
    3422 [main] DEBUG org.hibernate.jdbc.JDBCContext  - after autocommit
    3422 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - aggressively releasing JDBC connection
    3422 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
    3422 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - returning connection to pool, pool size: 1
    3422 [main] DEBUG org.hibernate.engine.query.QueryPlanCache  - located native-sql query plan in cache (select * from abonne)
    3422 [main] DEBUG org.hibernate.impl.SessionImpl  - SQL query: select * from abonne
    3422 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
    3422 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - opening JDBC connection
    3438 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - total checked-out connections: 0
    3438 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - using pooled JDBC connection, pool size: 0
    3438 [main] DEBUG org.hibernate.SQL  - select * from abonne
    3438 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - preparing statement
    3438 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to open ResultSet (open ResultSets: 0, globally: 0)
    3454 [main] DEBUG org.hibernate.loader.Loader  - processing result set
    3454 [main] DEBUG org.hibernate.loader.Loader  - result set row: 0
    3454 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3454 [main] DEBUG org.hibernate.type.IntegerType  - returning '1' as column: ABONNE_IDENT
    3454 [main] DEBUG org.hibernate.type.StringType  - returning 'LUCAS' as column: ABONNE_NOM
    3454 [main] DEBUG org.hibernate.type.StringType  - returning 'REGIS' as column: ABONNE_PRENOM
    3454 [main] DEBUG org.hibernate.type.StringType  - returning '0299558888' as column: ABONNE_TELEPHONE
    3454 [main] DEBUG org.hibernate.type.StringType  - returning 'rlucas102@hotmail.com' as column: ABONNE_MAIL
    3454 [main] DEBUG org.hibernate.type.StringType  - returning '.NET, PHP, Java' as column: ABONNE_COMPETENCES
    3454 [main] DEBUG org.hibernate.loader.Loader  - result set row: 1
    3454 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3454 [main] DEBUG org.hibernate.type.IntegerType  - returning '2' as column: ABONNE_IDENT
    3454 [main] DEBUG org.hibernate.type.StringType  - returning 'JUIN' as column: ABONNE_NOM
    3454 [main] DEBUG org.hibernate.type.StringType  - returning 'Leclerc' as column: ABONNE_PRENOM
    3454 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_TELEPHONE
    3454 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_MAIL
    3469 [main] DEBUG org.hibernate.type.StringType  - returning null as column: ABONNE_COMPETENCES
    3469 [main] DEBUG org.hibernate.loader.Loader  - result set row: 2
    3469 [main] DEBUG org.hibernate.loader.Loader  - result row: 
    3469 [main] DEBUG org.hibernate.type.IntegerType  - returning '3' as column: ABONNE_IDENT
    3469 [main] DEBUG org.hibernate.type.StringType  - returning 'xxxxxxxx' as column: ABONNE_NOM
    3469 [main] DEBUG org.hibernate.type.StringType  - returning 'Nicolas' as column: ABONNE_PRENOM
    3469 [main] DEBUG org.hibernate.type.StringType  - returning '06xxxxxxx' as column: ABONNE_TELEPHONE
    3469 [main] DEBUG org.hibernate.type.StringType  - returning 'nicolas.xxxxxxxxxx@laposte.net' as column: ABONNE_MAIL
    3469 [main] DEBUG org.hibernate.type.StringType  - returning 'Java et Réseaux' as column: ABONNE_COMPETENCES
    3469 [main] DEBUG org.hibernate.loader.Loader  - done processing result set (3 rows)
    3469 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close ResultSet (open ResultSets: 1, globally: 1)
    3469 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
    3469 [main] DEBUG org.hibernate.jdbc.AbstractBatcher  - closing statement
    3469 [main] DEBUG org.hibernate.engine.StatefulPersistenceContext  - initializing non-lazy collections
    3469 [main] DEBUG org.hibernate.jdbc.JDBCContext  - after autocommit
    3469 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - aggressively releasing JDBC connection
    3469 [main] DEBUG org.hibernate.jdbc.ConnectionManager  - releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
    3469 [main] DEBUG org.hibernate.connection.DriverManagerConnectionProvider  - returning connection to pool, pool size: 1

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Les différents .list() n'exécutent ils pas plusieurs fois la requête ?

    J'aurais écrit ta méthode différemment :

    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
     
    Session session = HibernateUtil.currentSession();		 
    SQLQuery myQuery = session.createSQLQuery("select * from abonne");
    List liste =  myQuery.list();
     
    System.out.println("-----------> TAILLE : "+ liste.size());
     
    Iterator iter = liste.iterator();
    while(iter.hasNext())
    {
      Abonne abonne = (Abonne) iter.next();
      if (abonne != null)
      {
        System.out.println(abonne.getNom());
      }
      else
      {
        System.out.println("L'enregistrement est vide");			
      }
    }
     
    HibernateUtil.closeSession();
    Vérifier la syntaxe, car j'ai écrit ça vite fait.

  5. #5
    BsT
    BsT est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 72
    Points : 83
    Points
    83
    Par défaut
    Bonjour,

    Lorsque sur le nom d'une classe tu as [L c'est que ta classe est un tableau;

    Tu devrais plutot écrire
    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
     
     
    public class Test {
     
    	 public static void main(String[] args)
    		throws HibernateException {
     
    		 Session session = HibernateUtil.currentSession();		 
    		 Query myQuery = session.createQuery("From Abonne");
                     List result = myQuery.list();
    		 System.out.println("-----------> TAILLE :  "result.size());
    // j'utilise un iterator mais tu peux prendre result.get(i)
    		 for (Iterator it = result.iterator(); it.hasNext();) {
    			 Abonne abonne = (Abonne) it.next();
    			 System.out.println(abonne.getNom());
    // abonne est forcement != null
    //			 if (abonne != null) {
    //				 System.out.println(abonne.getNom());
    //			 } else {
    //				 System.out.println("L'enregistrement est vide");
    //			 }
    		 }
     
    		 HibernateUtil.closeSession();
     
    	 }
    }
    Edit : arf devancé

  6. #6
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    Merci mais j'avais déjà essayé ça (j'aurais dû vous le préciser). Le problème avec cette requête en HQL (si j'ai bien compris) est que j'obitens l'exception suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException
    	at org.hibernate.hql.ast.ASTQueryTranslatorFactory.createQueryTranslator(ASTQueryTranslatorFactory.java:35)
    	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:72)
    	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:54)
    	at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:71)
    	at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133)
    	at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112)
    	at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1583)
    	at hibernate.Test.main(Test.java:21)

    Faut-il que je fasse comme avec l'autre classe (cf post précédent) ?

  7. #7
    Membre habitué Avatar de bouchette63
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Points : 187
    Points
    187
    Par défaut
    Bonjour,

    il te manque apparemment la jar Ant dans ta bibliothèque.

  8. #8
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    merci c'est que je viens de voir grâce à mon ami Google. C'est le bordel de reprendre un projet où chacun a mis son petit plug-in de son côté sur Eclipse.

  9. #9
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Utilise le HQL comme l'a ecrit Bst.
    Verifie que tu as bien tous les jars nécessaires à Hibernate, dont le antlr qui a l'air de manquer.

  10. #10
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    Merci. J'ai le ant-antlr-1.6.5.jar, c'est le bon svp?

  11. #11
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Mars 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2005
    Messages : 363
    Points : 210
    Points
    210
    Par défaut
    j'ai trouvé le bon dans le hibernate****.zip téléchargé.

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

Discussions similaires

  1. [MySQL] Instanciation d'objet après requête SQL
    Par MarieKisSlaJoue dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/03/2014, 17h11
  2. [MySQL] Query was empty après requête SQL
    Par clementdevelop dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 21/05/2013, 11h56
  3. Test VBS après requête SQL
    Par jnauche dans le forum VBScript
    Réponses: 5
    Dernier message: 22/05/2008, 11h08
  4. Ensemble de données fermé après requête SQL
    Par Eric Beaumard dans le forum Bases de données
    Réponses: 10
    Dernier message: 04/10/2007, 08h19
  5. [débutant] Différence de requête SQL
    Par mchicoix dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 26/03/2006, 17h39

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