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

Oracle Discussion :

Caused by: java.sql.SQLException: ORA-02289: la séquence n'existe pas


Sujet :

Oracle

  1. #1
    Membre averti Avatar de mouss4rs
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 884
    Points : 355
    Points
    355
    Par défaut Caused by: java.sql.SQLException: ORA-02289: la séquence n'existe pas
    bonjour a tous,

    hier et aujourdhui, je rencontre une erreur sur mon fichier de log de ce type la :

    javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not get next sequence value
    at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:630)
    at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:219)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:193)
    at $Proxy59.persist(Unknown Source)
    at metier.persistance.DAO.organisation.PartiePrenanteDAO.insert(PartiePrenanteDAO.java:49)
    at metier.service.organisation.PartiePrenanteService.insertPartiePrenante(PartiePrenanteService.java:100)
    at metier.service.organisation.PartiePrenanteService$$FastClassByCGLIB$$b10c18b6.invoke()
    at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
    at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:700)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
    at metier.service.organisation.PartiePrenanteService$$EnhancerByCGLIB$$9927c93d.insertPartiePrenante()
    at presentation.PartiePrenanteAction.fichePartiePrenanteInsert(PartiePrenanteAction.java:249)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at presentation.NavigationServlet.getPath(NavigationServlet.java:306)
    at presentation.NavigationServlet.performTask(NavigationServlet.java:240)
    at presentation.NavigationServlet.doPost(NavigationServlet.java:57)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at presentation.SecuriteFilter.doFilter(SecuriteFilter.java:79)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.webapp.admin.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Unknown Source)
    Caused by: org.hibernate.exception.SQLGrammarException: could not get next sequence value
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
    at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:96)
    at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:99)
    at org.hibernate.ejb.event.EJB3PersistEventListener.saveWithGeneratedId(EJB3PersistEventListener.java:49)
    at org.hibernate.event.def.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:131)
    at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:87)
    at org.hibernate.impl.SessionImpl.firePersist(SessionImpl.java:609)
    at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:601)
    at org.hibernate.engine.EJB3CascadingAction$1.cascade(EJB3CascadingAction.java:30)
    at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268)
    at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:216)
    at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)
    at org.hibernate.engine.Cascade.cascade(Cascade.java:130)
    at org.hibernate.event.def.AbstractSaveEventListener.cascadeBeforeSave(AbstractSaveEventListener.java:431)
    at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:265)
    at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)
    at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:121)
    at org.hibernate.ejb.event.EJB3PersistEventListener.saveWithGeneratedId(EJB3PersistEventListener.java:49)
    at org.hibernate.event.def.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:131)
    at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:87)
    at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:38)
    at org.hibernate.impl.SessionImpl.firePersist(SessionImpl.java:618)
    at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:592)
    at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:596)
    at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:213)
    ... 46 more
    Caused by: java.sql.SQLException: ORA-02289: la séquence n'existe pas

    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
    at oracle.jdbc.driver.T4Call.receive(T4Call.java:743)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:799)
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1038)
    at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:839)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1133)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3329)
    at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
    at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:75)
    ... 69 more
    Cela m'arrive lorsque je désire ajouter des infos dans une table qui comporte une séquence ,via un formulaire , sur oracle 10g.
    j'ai créer le fichier de mapping avec les séquences respectives et normalement cela doit marcher.
    j'ai chercher hier un peu partout mais je galère.

    donc si quelqu'un a déja rencontré ce probleme, merci de m'en faire part .

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    Ce serait peut-être mieux de commencer par nous dire d'où sort ce fichier log... quel outil te renvoie cette erreur ?

  3. #3
    Membre averti Avatar de mouss4rs
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 884
    Points : 355
    Points
    355
    Par défaut
    bonjour,

    donc, j'utilise tomcat avec comme ide eclipse et bdd oracle.
    j'utilise l'api jpa pour mon appli web.
    J'ai verifier mes log des script d'initialisation tout à l'air en ordre (table, sequence etc..)
    j'ai revérifier le orm.xmlpour l'ajout des séquence : aucune erreur.
    j'ai consulté pas mal de topic concernant cette erreur sans trouver de soluce.

    ma séquence est pourant bien la et il me sort :
    Hibernate: select SEQ_PARTIEPRENANTE.nextval from dual
    Hibernate: select hibernate_sequence.nextval from dual javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not get next sequence value

  4. #4
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    vérifie que le user de connexion voit bien cette séquence... mais dans hibernate il ne me semble pas que l'appel aux séquences fonctionne ainsi

  5. #5
    Membre averti Avatar de mouss4rs
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 884
    Points : 355
    Points
    355
    Par défaut
    oui, il l'a voit bien.
    Cependant, je pense que le probleme vient des autres séquences relié à la table PartiePrenante bien que j'ai mit des

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @OneToOne(cascade = CascadeType.ALL)
       @JoinColumn(name = "pap_donHse")
       DonnesHse donneeHse;
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @OneToOne(cascade = CascadeType.ALL)
       @JoinColumn(name = "pap_coordonnees")
       private Coordonnes coordonnees;
    pour hibernate, je suis en train de voir comment comment les séquences fonctionnent.

  6. #6
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    J'y connais rien à Hibernate

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Même erreur dans un test, en effectuant un mapping
    C'est les propositions de Oracle:
    http://ora-02289.ora-code.net/
    ora-02289: sequence does not exist
    Cause: The specified sequence does not exist, or the user does not have the required privilege to perform this operation.
    Action: Make sure the sequence name is correct, and that you have the right to perform the desired operation on this sequence.

    Et Sinon je te dis vérifie dans ton modèle, que t'as bien dans @Table(name = "taTable"), et tes champs, il va falloir bien vérifié les types de données.

    Enfin j'éspère avoir répondu à ta question.

    Bon courage pour la suite

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/09/2007, 12h50
  2. Réponses: 1
    Dernier message: 07/09/2007, 21h50
  3. Réponses: 5
    Dernier message: 21/08/2007, 13h47
  4. [java.sql.SQLException: ORA-01002: fetch out of sequence]
    Par chouchou93 dans le forum Oracle
    Réponses: 9
    Dernier message: 30/05/2006, 13h05
  5. Réponses: 4
    Dernier message: 25/01/2006, 18h25

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