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 :

probleme d'enregistrement d'un objet


Sujet :

Hibernate Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 67
    Par défaut probleme d'enregistrement d'un objet
    Bonjour a tous

    voila mon probleme:
    J'ai créé une table declaration sur postgres :
    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
     
     
    CREATE TABLE declaration
    (
      id_declaration int8 NOT NULL DEFAULT nextval('seq_declaration'::text),
      ninea char(10) NOT NULL,
      id_user int8 NOT NULL,
      num_fact varchar(10),
      date_declaration date,
      date_imposition varchar(50),
      date_cotisation_deb varchar(50),
      date_cotisation_fin varchar(50),
      montant_total float8,
      ae_taxable float8,
      ae_non_taxable float8,
      ar_non_taxable float8,
      ar_taxable_exo float8,
      ar_suspensiontva float8,
      total_mnt_nstva float8,
      plps float8,
      a_precomptetva float8,
      mnt_total_taxable float8,
      mnt_tva_brute float8,
      precomptetva float8,
      acompte float8,
      imput_cheq_ddi float8,
      total_avance float8,
      deduc_moi float8,
      credit_tva_moi_prec float8,
      total_deduc float8,
      solde_total_exig float8,
      credit_tva_report float8,
      mnt_rembours float8,
      CONSTRAINT pk_declaration PRIMARY KEY (id_declaration),
      CONSTRAINT fk_declaration_declaration_entrepri FOREIGN KEY (ninea) REFERENCES entreprise (ninea) ON UPDATE RESTRICT ON DELETE RESTRICT,
      CONSTRAINT fk_declaration_declaration_user FOREIGN KEY (id_user) REFERENCES utilisateur (id_user) ON UPDATE RESTRICT ON DELETE RESTRICT
    )
    je vous envoie ma classe bean et le .hbm.xml
    Ensuite dans mon action lorsque j'appel la metode pour enregistrer il me renvoie cette erreur a la console:

    INFO : DeclarationDao.java -> Entree dans methode insererDeclaration la classe DeclarationDao
    Hibernate: select nextval ('seq_declaration')
    Hibernate: select entreprise_.ninea, entreprise_.nom_entreprise as nom2_1_, entreprise_.sigle as sigle1_, entreprise_.forme as forme1_, entreprise_.compte as compte1_, entreprise_.adresse as adresse1_, entreprise_.rue as rue1_, entreprise_.quartier as quartier1_, entreprise_.localite as localite1_, entreprise_.bp as bp1_, entreprise_.renseigne as renseigne1_, entreprise_.extenso as extenso1_, entreprise_.activite as activite1_, entreprise_.tel as tel1_, entreprise_.num_secu as num15_1_, entreprise_.num_registre as num16_1_, entreprise_.email as email1_, entreprise_.description as descrip18_1_, entreprise_.adresse_stable as adresse19_1_, entreprise_.comptable as comptable1_, entreprise_.bp_comptable as bp21_1_, entreprise_.tel_comptable as tel22_1_, entreprise_.forme_societe as forme23_1_, entreprise_.profession as profession1_, entreprise_.unite_secteur as unite25_1_, entreprise_.centre_fiscal as centre26_1_, entreprise_.centre_perception as centre27_1_ from entreprise entreprise_ where entreprise_.ninea=?
    org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.tva.bo.Utilisateur
    at org.hibernate.engine.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:216)
    at org.hibernate.type.EntityType.getIdentifier(EntityType.java:99)
    at org.hibernate.type.EntityType.isDirty(EntityType.java:216)
    at org.hibernate.type.TypeFactory.findDirty(TypeFactory.java:412)
    at org.hibernate.persister.entity.BasicEntityPersister.findDirty(BasicEntityPersister.java:2538)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.dirtyCheck(DefaultFlushEntityEventListener.java:344)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:108)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:190)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:70)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:730)
    at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:324)
    at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:86)
    at com.tva.dao.imp.DeclarationDao.insertDeclaration(DeclarationDao.java:46)
    at com.tva.manager.imp.DeclarationMg.saveDeclaration(DeclarationMg.java:61)
    at com.tva.struts.action.declaration.EnregistrerDeclarationAction.executeAction(EnregistrerDeclarationAction.java:152)
    at com.tva.struts.action.ActionBase.execute(ActionBase.java:143)
    at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    at com.tva.struts.servlets.ServletBase.doPost(ServletBase.java:38)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)


    voici ma classe DeclarationDao.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
     
    public class DeclarationDao extends HibernateDaoSupport implements IDeclarationDao {
     
       protected Log logger = LogFactory.getLog(DeclarationDao.class); 
       protected static final String hqlRequest  = " from Declaration as declaration";
       ConstantePresentation constante = new ConstantePresentation();
     
    	public void insertDeclaration(Declaration declaration) {
    	    logger.info("Entree dans methode insererDeclaration la classe DeclarationDao");
    	    Session session = this.getSessionFactory().openSession();
    	    try{
    	        Transaction tx = session.beginTransaction();
    	        session.save(declaration);
    	        tx.commit();
    	    }catch (Exception e){
    	        e.printStackTrace();
    	        logger.error("Erreur lors de l'insertion d'une declaration");
    	    }finally{
    	        session.close();
    	    }
     
    	}
    	/* (non-Javadoc)
    	 * @see com.tva.dao.interfaces.IDeclarationDao
    	 */
    	public void saveOrUpdateDeclaration(Declaration declaration) {
    	    logger.info("Entree dans la methode saveDeclaration la classe DeclarationDao");
    	    Session session = this.getSessionFactory().openSession();
    	    try{
    	        Transaction tx = session.beginTransaction();
    	        session.saveOrUpdate(declaration);
    	        //getHibernateTemplate().save(declaration);
    	        tx.commit();
    	    }catch (Exception e){
    	        e.printStackTrace();
    	        logger.error("Erreur lors de la sauvegarde d'une declaration");
    	    }finally{
    	        session.close();
    	    }
     
    	}
     
    }
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/03/2008, 15h13
  2. [Language][Package]Probleme de portée d'un Objet
    Par julien.v dans le forum Langage
    Réponses: 6
    Dernier message: 06/06/2005, 14h23
  3. Réponses: 11
    Dernier message: 02/05/2005, 19h30
  4. [Oracle 10g]Problème pour enregistrer blob
    Par Invité dans le forum Hibernate
    Réponses: 6
    Dernier message: 27/04/2005, 11h45
  5. [FLASH MX] Probleme avec le drag d'objet
    Par Toutouffe dans le forum Flash
    Réponses: 3
    Dernier message: 23/01/2005, 22h41

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