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 :

[Hibernate] Exception bizarre NoSuchElementException


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut [Hibernate] Exception bizarre NoSuchElementException
    Bonjour,
    j'ai une excepetion, que voici, lors du mapping :

    Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
    at dsi.emc.pac7000.ui.Pac7000UI.exportToBaseMenuSelected(Pac7000UI.java:380)
    ... at java.awt.EventDispatchThread.run(Unknown Source)
    Caused by: java.util.NoSuchElementException
    at java.util.AbstractList$Itr.next(Unknown Source)
    at org.hibernate.sql.InFragment.toFragmentString(InFragment.java:80)
    at org.hibernate.persister.entity.SingleTableEntityPersister.discriminatorFilterFragment(SingleTableEntityPersister.java:495)
    at org.hibernate.loader.entity.EntityLoader.<init>(EntityLoader.java:85)
    at org.hibernate.persister.entity.BasicEntityPersister.postInstantiate(BasicEntityPersister.java:2432)
    at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:244)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1005)
    at dsi.emc.pac7000.core.persistence.HibernateUtil.<clinit>(HibernateUtil.java:84)
    ... 30 more

    j'ai réussi a détecter la cause de l'exception, mais je ne comprends pas pourquoi :
    j'ai le fichier de mapping 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
    24
    25
    26
    27
    28
    29
    30
    31
     
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
            "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
            "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
     
    <hibernate-mapping package="dsi.emc.pac7000.ui">
     
            <class name="GeneralComponent" table="GENERAL" discriminator-value="G">
                    <id name="id" column="generalcomponent_uid" type="long" unsaved-value="null">
                            <generator class="hilo"/>
                    </id>
                    <discriminator column="COMPONENT_TYPE" type="string"/>
     
    	    <component name="r">
    	        <property  name="x" column="X" type="int"/>
    	        <property  name="y" column="Y" type="int"/>
    	        <property  name="width" column="WIDTH" type="int"/>
    	        <property  name="height" column="HEIGHT" type="int"/>
    	    </component>
     
    	    <subclass name="dsi.emc.pac7000.ui.graph.SpecialForm" discriminator-value="SPECIAL_FORM">
    	        <property  name="diagonalNormal" column="DIAG_NORMAL" type="boolean"/>
     	    </subclass>
    	    <subclass name="dsi.emc.pac7000.ui.graph.StatementUI" discriminator-value="STATEMENT_UI">
     	    </subclass>
    	    <subclass name="dsi.emc.pac7000.ui.PacComponent" discriminator-value="PAC_COMPONENT">
    	        <property  name="onStatement" column="ON_STATEMENT" type="boolean"/>
    	    </subclass>
    	</class>
    </hibernate-mapping>
    si j'enleve le composant PacComponent (les 3lignes <subclass>---</subclass>) il n'y a plus l'erreur.
    si j'enleve juste la propriété de ce composant l'erreur est toujours là.

    je ne comprends pas à quoi cela est du ?
    pour info (je ne sais pas si cela peux aider) PacComponent a plein de propriété, je ne veux sauvegarder que celle-ci ce n'est pas sencé posé de probleme.

    en tout cas, si quelqu'un voit dèoù cela peut venir, je l'en remercie d'avance.

  2. #2
    Membre chevronné
    Inscrit en
    Août 2005
    Messages
    352
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 352
    Par défaut
    Es tu sur de n'avoir que G, SPECIAL_FORM, STATEMENT_UI et PAC_COMPONENT en base dans la colonne COMPONENT_TYPE ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    Bonjour,
    en fait en base je ne peux rien voir, vu que c'est au niveau du mapping que survient l'erreur.
    donc en base, j'ai une table qui se creer

    ..........Champ ..........Type ............Interclassement..... null
    generalcomponent_uid bigint(20) ............................. Non
    COMPONENT_TYPE varchar(255) latin1_swedish_ci ..... Non
    X .........................int(11) ......................................Oui
    Y .........................int(11) ..................................... Oui
    WIDTH .................int(11) ..................................... Oui
    HEIGHT .................int(11) ..................................... Oui
    DIAG_NORMAL ......tinyint(1) .....................................Oui
    ON_STATEMENT......tinyint(1) ......................................Oui

    mais aucune sauvegarde n'a encore été faite...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    je viens de me remettre dessus, et j'ai trouvé la solution, grace a internet bien sur, en fait ma classe PacComponent qui posait le probleme était une classe abstraite, j'avais oublié de mapper toutes ces sous classes car je ne voulais enregistrer qu'une propriété issue de PacComponent.

    Bref, le pb est résolu.
    Merci

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/01/2006, 14h49
  2. [Hibernate] exception entre MySQL et MS SQL
    Par lilou77 dans le forum Hibernate
    Réponses: 7
    Dernier message: 13/01/2006, 11h52
  3. [Hibernate exception]
    Par agougeon dans le forum Hibernate
    Réponses: 7
    Dernier message: 08/01/2006, 17h36
  4. [SWING] Exception bizarre avec Thread
    Par Gob4 dans le forum Débuter
    Réponses: 2
    Dernier message: 13/09/2005, 21h55
  5. [IO][Sérialisation]Exception bizarre depuis applet
    Par Pill_S dans le forum Applets
    Réponses: 8
    Dernier message: 15/12/2004, 19h08

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