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 :

org.hibernate.hql.ast.QuerySyntaxError: unexpected token


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Points : 22
    Points
    22
    Par défaut org.hibernate.hql.ast.QuerySyntaxError: unexpected token
    slt ;
    je monte un application web utilisant hibernate 3.x sous myeclipse
    et dans un stade de mon application, il mest demandé de creer une table par une requete
    jai fait
    sql="create table parent ( id bigint not null primary key )";
    Session session = HibernateSessionFactory.currentSession();
    session.createQuery(sql).executeUpdate();
    HibernateSessionFactory.closeSession();
    mais ca me genere une exception que jai pas compris le sens:
    org.hibernate.hql.ast.QuerySyntaxError: unexpected token: create near line 1, column 1 [create table parent ( id bigint not null primary key )]
    org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:63)
    org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:215)
    org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:127)
    org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:83)
    org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:427)
    org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884)
    org.hibernate.impl.SessionImpl.executeUpdate(SessionImpl.java:865)
    org.hibernate.impl.QueryImpl.executeUpdate(QueryImpl.java:89)
    com.paperLess.GED.core.ManageIndexInDocumentModel.createPLTable(ManageIndexInDocumentModel.java:272)
    org.apache.jsp.ad_005fupd_005fdel_005fmodel_jsp._jspService(ad_005fupd_005fdel_005fmodel_jsp.java:194)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    merci pour votre aide et si qlq un sais comment faire plz de me le dire

  2. #2
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    petite question, pourquoi tiens tu a créer cette table sachant qu'Hibernta propose une solution d'auto-construction de la base correspondant à ton mapping ?!?

    Sinon pour ce qui est de l'erreur, je pense qu'Hibernate ne s'attend pas a voir un "create" en début de requete. Je n'ai jamais essayé cela à vrai dire... mais il faudrait vérifier si cela est possible je dirai
    See you, space cowboy... and if you're satisfied, click on

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    merci BizuR pour ta reponse et est ce que tu pourra faire plus d'eclairsissements sur ce point car ja voit quil peu resoudre mon probleme

  4. #4
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Citation Envoyé par oughlad
    merci BizuR pour ta reponse et est ce que tu pourra faire plus d'eclairsissements sur ce point car ja voit quil peu resoudre mon probleme
    Je ne crée pas ma base avec Hibernate en ce qui me concerne ... donc je ne saurais t'aider, par contre, je sais que cela est faisable ... et je t'invite donc a te retourner vers la doc en ligne fournie par Hibernate, complète, et en français qui plus est
    See you, space cowboy... and if you're satisfied, click on

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    merci pour ton aide je me suis retourné vers la doc mais comme je suis debutant dans le monde de hibernate jai pas appris bcp de chose et si qlq un a une idée en ce qui concerne mon probleme merci de me le dire

  6. #6
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    c'est pourtant pas difficile ni long de lire un menu de documentation ... même en débutant sur Hibernate. Pour info, j'ai commencé Hibernate il y a 1 mois en plus de deux autres frameworks ... donc je peux également dire que je "debute" en la matière

    Tu trouveras l'endroit de la doc où ils parlent de cet outil de génération de schéma en cliquant ici

    Bon courage...
    See you, space cowboy... and if you're satisfied, click on

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    Ok mais est ce quil ne parle pas seulement des outils qui genere automatiquement les fichiers de mapping et les fichiers de configuration comme ce qui existent dans la solution myeclipse.
    moi j'utlise myeclipse et je n'ecri pas mes fichiers de configuration et les fichiers de mapping , cest cette solution qui me genere tous.
    mais en tout cas merci pour toi et en attendant d'autre reponses je vais chercher dans dautres endroits.

  8. #8
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Tu sais lire ? ou bien lis tu juste "en diagonale" la documentation ? Si je t'envoie ce lien, c'est pas pour te présenter un outil réalisant le travail déjà fait

    Citation Envoyé par La Doc Hibernate
    La DDL peut être générée à partir de vos fichiers de mapping par un utilitaire d'Hibernate.
    Le schéma généré inclut les contraintes d'intégrité référentielle (clefs primaires et étrangères) pour les tables d'entités et de collections.
    Les tables et les séquences sont aussi créées pour les générateurs d'identifiant mappés.

    Vous devez spécifier un Dialect SQL via la propriété hibernate.dialect lors de l'utilisation de cet outils,
    puisque la DDL est fortement dépendante de la base de données.

    D'abord, personnalisez vos fichiers de mapping pour améliorer le schéma généré.
    Ca c'est l'intro ... pas assez parlante peut etre ? lis ce qui est en ROUGE
    Donc pour résumer, cet outil (SchemaExport) te permet de créer une base de données à partir de ton fichier de mapping et du fichiers de propriétés d'Hibernate. Tu as trois solutions pour l'utiliser :

    - En ligne de commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -cp classpath_hibernate net.sf.hibernate.tool.hbm2ddl.SchemaExport options fichiers_de_mapping
    - Durant la programmation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Configuration cfg = ....;
    new SchemaExport(cfg).create(false, true);

    - Avec Ant :
    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
    <target name="schemaexport">
        <taskdef name="schemaexport"
            classname="org.hibernate.tool.hbm2ddl.SchemaExportTask"
            classpathref="class.path"/>
     
        <schemaexport
            properties="hibernate.properties"
            quiet="no"
            text="no"
            drop="no"
            delimiter=";"
            output="schema-export.sql">
            <fileset dir="src">
                <include name="**/*.hbm.xml"/>
            </fileset>
        </schemaexport>
    </target>

    Voila, si avec ca la doc ne répond pas à tes besoins ... bah tu n'as plus qu'a rapprendre a lire
    See you, space cowboy... and if you're satisfied, click on

  9. #9
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    ok merci mais tu ne voit pas que la doc de hibernate ne parle pas assez sur des points , il te donne seulement des flachs et qui les details il faut inventer

  10. #10
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Citation Envoyé par oughlad
    ok merci mais tu ne voit pas que la doc de hibernate ne parle pas assez sur des points , il te donne seulement des flachs et qui les details il faut inventer
    Peut etre que oui, elle ne document "pas assez" mais bon, faut bien comprendre que ca reste une documentation... et, de ton coté, tu n'as pas pour autant cherché ces quelques infos dans cette documentation...

    Si encore tu te pointais sur le forum en demandant :
    "J'ai lu que l'on pouvait créer la base ainsi [...citation de code lu...] mais je ne comprend pas très bien comment l'appliquer à mon problème car [... explication de ton cas particulier...]. On pourrait surement t'aider plus.

    Mais la, je te donne une piste (car, après tout, je ne vais pas te donner une réponse "toute faite") et tu vas dire après que ce que je te propose ne t'aide en rien (et limite que je vise à côté de la plaque)... alors que ca concerne tout de même la première chose que tu aurais du aller voir avant d'envisager la question sur le forum.

    Ce que je veux te dire, c'est que le forum est fait pour donner un soutien aux développeurs qui rencontrent des soucis et pas pour t'apporter une solution "clé en main". Perso, à chaque réponse que je t'ai donné, j'ai plus eu l'impression que tu as lu mon post ... et reposté en donnant une réponse sans même avoir été lire de maniere approfondie les pistes que je t'ai données... (du fait notamment que tu n'as jamais argumenté tes propos peut etre ).

    Sinon, il existe le plugin Eclipse Hibernate Tools qui permet de creer la base de maniere manuelle ... mais la, je vais te laisser chercher.

    Bon courage!
    See you, space cowboy... and if you're satisfied, click on

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/05/2010, 21h13
  2. Réponses: 9
    Dernier message: 30/12/2008, 11h47
  3. Réponses: 7
    Dernier message: 01/10/2008, 10h48
  4. Réponses: 2
    Dernier message: 21/07/2008, 14h53
  5. Réponses: 5
    Dernier message: 01/02/2008, 15h59

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