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 :

erreur hibernate service.spi


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de philo71
    Profil pro
    Account manager
    Inscrit en
    Avril 2005
    Messages
    242
    Détails du profil
    Informations personnelles :
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Account manager

    Informations forums :
    Inscription : Avril 2005
    Messages : 242
    Par défaut erreur hibernate service.spi
    Bonjour,
    Sous Fedora 28 serveur X86_64 avec Xfce4 pour le desktop.
    Je suis entrain de dévélopper une application Java EE, avec pour base de donnée h2. j'ai importé le h2.jar version 1.4.196, ma base est bien sous ~/.m2/repository/com/h2database/h2/1.4.196/, car j'utilise <Maven>.
    J"utilise JPQL de JPA et je persiste mes objets java avec un code source qui a était tester.
    Mon probleme est que je n’arrive pas a écrire dans ma base de donnée H2 avec hibernate, cela devrait céer deux tables mais rien n’est fait.

    voici le log de la console d'eclipse :
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    Running App ...
    Exception in thread "main" org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:271)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:233)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    	at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51)
    	at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:242)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    	at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.handleTypes(MetadataBuildingProcess.java:352)
    	at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:111)
    	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:858)
    	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:885)
    	at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:58)
    	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    	at App.main(App.java:19)
    Caused by: org.hibernate.exception.JDBCConnectionException: Error calling Driver#connect
    	at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator$1$1.convert(BasicConnectionCreator.java:105)
    	at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.convertSqlException(BasicConnectionCreator.java:123)
    	at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:41)
    	at org.hibernate.engine.jdbc.connections.internal.BasicConnectionCreator.createConnection(BasicConnectionCreator.java:58)
    	at org.hibernate.engine.jdbc.connections.internal.PooledConnections.addConnections(PooledConnections.java:123)
    	at org.hibernate.engine.jdbc.connections.internal.PooledConnections.<init>(PooledConnections.java:42)
    	at org.hibernate.engine.jdbc.connections.internal.PooledConnections.<init>(PooledConnections.java:20)
    	at org.hibernate.engine.jdbc.connections.internal.PooledConnections$Builder.build(PooledConnections.java:161)
    	at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.buildPool(DriverManagerConnectionProviderImpl.java:109)
    	at org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.configure(DriverManagerConnectionProviderImpl.java:72)
    	at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:242)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
    	at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.buildJdbcConnectionAccess(JdbcEnvironmentInitiator.java:145)
    	at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:66)
    	at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)
    	at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:88)
    	at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:259)
    	... 14 more
    Caused by: org.h2.jdbc.JdbcSQLException: Wrong user name or password [28000-196]
    	at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
    	at org.h2.message.DbException.get(DbException.java:179)
    	at org.h2.message.DbException.get(DbException.java:155)
    	at org.h2.message.DbException.get(DbException.java:144)
    	at org.h2.engine.Engine.validateUserAndPassword(Engine.java:336)
    	at org.h2.engine.Engine.createSessionAndValidate(Engine.java:162)
    	at org.h2.engine.Engine.createSession(Engine.java:137)
    	at org.h2.engine.Engine.createSession(Engine.java:27)
    	at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:354)
    	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:116)
    	at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:100)
    	at org.h2.Driver.connect(Driver.java:69)
    	at org.hibernate.engine.jdbc.connections.internal.DriverConnectionCreator.makeConnection(DriverConnectionCreator.java:38)
    	... 29 more

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    org.h2.jdbc.JdbcSQLException: Wrong user name or password
    Tu n'as pas fourni les bon identifiants de connexion à ta base.

  3. #3
    Membre éclairé Avatar de philo71
    Profil pro
    Account manager
    Inscrit en
    Avril 2005
    Messages
    242
    Détails du profil
    Informations personnelles :
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Account manager

    Informations forums :
    Inscription : Avril 2005
    Messages : 242
    Par défaut
    merci,

    voici le persistence.xml :
    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
    ?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
                 http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
                 version="2.1">
     
    <persistence-unit name="myApp">
    <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    <properties>
     
      <property name="javax.persistence.jdbc.driver"  value="org.h2.Driver"/>
      <property name="javax.persistence.jdbc.url"     value="jdbc:h2:~/.m2/repository/com/h2database/h2/1.4.196/db"/>
     
      <property name="hibernate.dialect"        value="org.hibernate.dialect.H2Dialect"/>
      <property name="hibernate.hbm2ddl.auto"   value="update"/>
      <property name="hibernate.show_sql"       value="true"/>
      <property name="hibernate.connection.user" value="sa" />
     
    </properties>
    </persistence-unit>
     
    </persistence>
    maintenant j'ai une autre erreur sur du code source testé de hibernate:

    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
    Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: myApp] Unable to build Hibernate SessionFactory
    	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:967)
    	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:892)
    	at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:58)
    	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
    	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    	at App.main(App.java:19)
    Caused by: org.hibernate.MappingException: Could not determine type for: java.util.List, at table: Author, for columns: [org.hibernate.mapping.Column(authors)]
    	at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:455)
    	at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:422)
    	at org.hibernate.mapping.Property.isValid(Property.java:226)
    	at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:597)
    	at org.hibernate.mapping.RootClass.validate(RootClass.java:265)
    	at org.hibernate.boot.internal.MetadataImpl.validate(MetadataImpl.java:329)
    	at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:451)
    	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:889)
    	... 4 more
    je retiens que hibernate lève une exeption : Could not determine type for: java.util.List, at table: Author, for columns: [org.hibernate.mapping.Column(authors)]
    J'avais oublié d'annoter Author >> book >> @OneToMany

    voici mon code de Author :
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    package library;
     
    import java.util.ArrayList;
    import java.util.List;
     
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import javax.persistence.OneToMany;
     
    @Entity
    public class Author {
    	@Id
    	@GeneratedValue
    	private int id;
     
    	private String firstName;
    	private String lastName;
     
    	@OneToMany
    	List<Author> authors= new ArrayList<>();
     
     
    	public List<Author> getAuthors() {
    		return authors;
    	}
    	public void setAuthors(List<Author> authors) {
    		this.authors = authors;
    	}
    	public int getId() {
    		return id;
    	}
    	public void setId(int id) {
    		this.id = id;
    	}
    	public String getFirstName() {
    		return firstName;
    	}
    	public void setFirstName(String firstName) {
    		this.firstName = firstName;
    	}
    	public String getLastName() {
    		return lastName;
    	}
    	public void setLastName(String lastName) {
    		this.lastName = lastName;
    	}
     
     
     
     
    }
    ******************************************************************

    nouvelle exeption :
    maitenant le debug d'hibernate me dit :The file is locked: nio:~/.m2/repository/com/h2database/h2/1.4.196/db.mv.db [1.4.196/7]

    pourquoi ma base est bloquée ???????????????

  4. #4
    Membre éclairé Avatar de philo71
    Profil pro
    Account manager
    Inscrit en
    Avril 2005
    Messages
    242
    Détails du profil
    Informations personnelles :
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Account manager

    Informations forums :
    Inscription : Avril 2005
    Messages : 242
    Par défaut
    j'ai redémarré mon serveur tout marche bien !

    Post/thread Résolu

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

Discussions similaires

  1. Erreur naming service CORBA
    Par inertia dans le forum CORBA
    Réponses: 5
    Dernier message: 26/06/2008, 02h39
  2. erreur Hibernate sous eclipse
    Par ouatmad dans le forum Hibernate
    Réponses: 5
    Dernier message: 22/01/2008, 16h33
  3. Erreur Reporting services
    Par housni dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 30/07/2007, 11h21
  4. Réponses: 2
    Dernier message: 30/06/2006, 15h18
  5. erreur hibernate
    Par Z_lebron dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 11/05/2006, 14h00

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