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

Java Discussion :

ojb, oracle et mes séquences


Sujet :

Java

  1. #1
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Par défaut ojb, oracle et mes séquences
    Bonjour,
    Alors tout d'abord je sais pas trop où sont traités les problèmes ojb, donc si il faut que je déplace mon post merci de me le préciser.

    Alors voici mon problème : je suis entrain de migrer une base de données de DB2 à Oracle. Je rencontre quelques soucis avec les ojb. En gros les objets n'utilisent pas les séquences que j'ai créées pour les clés primaires lors de l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    PersistenceBroker broker = PersistenceBrokerFactory.createPersistenceBroker(new PBKey("dbresources"));
    ...
    broker.store(object);
    L'objet en question est déclaré dans un fichier repository_user.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <class-descriptor class="...maClasse" table="maTable">
     <field-descriptor name="id" column="ID" jdbc-type="INTEGER" nullable="false" indexed="true" primarykey="true" autoincrement="true" sequence-name="S_maSequence">
     </field-descriptor>
    ...
    Or lors du "store" l'id assigné est -2, alors que la séquence est déjà entamée.

    J'ai aussi ajouté des arguments au sequence-manager
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <sequence-manager className="org.apache.ojb.broker.util.sequence.SequenceManagerNativeImpl">
     <attribute attribute-name="autoNaming" attribute-value="false"/>
    </sequence-manager>
    Si vous avez des pistes...
    Merci de votre aide

  2. #2
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Par défaut
    décidement ça devient une habitude, je passe mon vendredi à chercher, je poste mon problème ici tout en continuant à chercher, et je tombe sur la solution :
    J'ai changé la classe utilisé pour la séquence (peut être plus adaptée à Oracle) et cela fonctionne, voici donc celle qu'il faut utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <sequence-manager className="org.apache.ojb.broker.util.sequence.SequenceManagerNextValImpl" />

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

Discussions similaires

  1. Insertion en base Oracle et gestion séquence
    Par ejaub dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 29/01/2010, 11h23
  2. [Oracle] utilisation d'une séquence
    Par magic charly dans le forum Langage SQL
    Réponses: 4
    Dernier message: 20/04/2006, 09h39
  3. Oracle n'utilise pas tous mes CPUS
    Par noumayoss dans le forum Oracle
    Réponses: 3
    Dernier message: 12/04/2006, 09h17
  4. Réponses: 15
    Dernier message: 30/06/2005, 16h35
  5. Réponses: 4
    Dernier message: 18/10/2004, 16h18

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