2017-11-29 30 views
0

私はいくつかのレガシーコードでいくつかの統合テストを書こうとしています。テストを実行すると、それらのエラーが表示されます。Hibernateを起動できません

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:267) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:231) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:51) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:94) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:240) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.handleTypes(MetadataBuildingProcess.java:352) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:111) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:691) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:726) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 

.....

Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set 
    at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:100) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:54) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:137) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:88) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:257) ~[hibernate-core-5.2.3.Final.jar:5.2.3.Final] 
    ... 52 common frames omitted 

起こっていただきました!私が取得することはできません。 hibernate.cfg.xmlはロードされていないかもしれませんが、/ src/test/resourcesや/ src/test/javaに置いても変わりません。休止状態の使用5.23。これは何についてですか?休止状態では4と5の間に何かが起こっています。 StandardServiceRegistryBuilder().applySettings(...)に電話する必要があります。メインから実行されたコードは正常に動作しています。任意のヒント?

+0

あなたはどのRDBMSを使用していますか、Hibernateにはどのような方言を指定しましたか? –

+0

'<プロパティ名=" hibernate.dialect "> org.hibernate.dialect.Oracle10gDialect' – Zveratko

+0

私はhibernate.cfg.xmlを読み込もうとしません。システムプロパティのみを読み込みます。 – Zveratko

答えて

0

彼らはもちろん、ファイルをロードし、別途

static Configuration cfg = new Configuration(); 
cfg.configure(); 

を呼び出している、レガシーコードがhounted場所です。私は正しい解決策ではない。