Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-26569

Cannot create hibernate config file for hibernate 5.3 and 5.4

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Critical
    • 4.13.0.AM1
    • 4.11.0.Final
    • hibernate
    • None
    • Hide

      1. Import project: https://github.com/jbosstools/jbosstools-hibernate/tree/master/itests/org.jboss.tools.hibernate.ui.bot.test/resources/prj/mvn-hibernate52
      2. Change pom to use hibernate 5.3 (or 5.4)
      3. Have running database from https://github.com/maxandersen/sakila-h2
      4. File -> New -> Other -> Hibernate -> Hibernate Configuration File (cfg.xml) and click Next
      5. Leave defaults and click Next
      6. Enter connection details like:

      André: I had to change the Connection URL: to the following (sakila h2 server prints out the ip it is reachable at:

      jdbc:h2:tcp://192.168.1.103:9092/sakila
      

      7. Click on Next
      8. Click on Finish
      Result: Wizard is kept open, no error dialog is show but the following error is in the Eclipse log:
      Expected: No error and dialog closes and generates file

      Alternatively(using an empty maven project):

      1. ASSERT: have sakila-h2 running (https://github.com/maxandersen/sakila-h2)
      2. EXEC: create an empty maven project
      3. EXEC: File -> New > Other > Hibernate > Hibernate Configuration File (cfg.xml) and click Next
      4. EXEC: Enter connection details like:
      5. EXEC: Click "Next", then "Finish"
      Show
      1. Import project: https://github.com/jbosstools/jbosstools-hibernate/tree/master/itests/org.jboss.tools.hibernate.ui.bot.test/resources/prj/mvn-hibernate52 2. Change pom to use hibernate 5.3 (or 5.4) 3. Have running database from https://github.com/maxandersen/sakila-h2 4. File -> New -> Other -> Hibernate -> Hibernate Configuration File (cfg.xml) and click Next 5. Leave defaults and click Next 6. Enter connection details like: André: I had to change the Connection URL: to the following (sakila h2 server prints out the ip it is reachable at: jdbc:h2:tcp: //192.168.1.103:9092/sakila 7. Click on Next 8. Click on Finish Result: Wizard is kept open, no error dialog is show but the following error is in the Eclipse log: Expected: No error and dialog closes and generates file Alternatively(using an empty maven project): ASSERT: have sakila-h2 running ( https://github.com/maxandersen/sakila-h2 ) EXEC: create an empty maven project EXEC: File -> New > Other > Hibernate > Hibernate Configuration File (cfg.xml) and click Next EXEC: Enter connection details like: EXEC: Click "Next", then "Finish"

    Description

      This workflow works for Hibernate 5.2
      Error from error log:

      eclipse.buildId=12.11.0.AM1-v20190221-1020-B4114
      java.version=11.0.2
      java.vendor=Oracle Corporation
      BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
      Framework arguments:  -product com.jboss.devstudio.core.product
      Command-line arguments:  -os linux -ws gtk -arch x86_64 -product com.jboss.devstudio.core.product
      
      org.eclipse.ui
      Error
      Fri Mar 08 10:30:50 CET 2019
      Unhandled event loop exception
      
      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:275)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:237)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)
      	at org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.injectServices(DefaultIdentifierGeneratorFactory.java:152)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:286)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)
      	at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.<init>(InFlightMetadataCollectorImpl.java:179)
      	at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:119)
      	at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:84)
      	at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:474)
      	at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:85)
      	at org.hibernate.boot.MetadataSources.buildMetadata(MetadataSources.java:184)
      	at org.jboss.tools.hibernate.runtime.v_5_3.internal.util.MetadataHelper.buildFromMetadataSources(MetadataHelper.java:49)
      	at org.jboss.tools.hibernate.runtime.v_5_3.internal.util.MetadataHelper.getMetadata(MetadataHelper.java:21)
      	at org.jboss.tools.hibernate.runtime.v_5_3.internal.ConfigurationFacadeImpl.getMetadata(ConfigurationFacadeImpl.java:174)
      	at org.jboss.tools.hibernate.runtime.v_5_3.internal.util.ConfigurationMetadataDescriptor.createMetadata(ConfigurationMetadataDescriptor.java:20)
      	at org.hibernate.tool.hbm2x.AbstractExporter.buildMetadata(AbstractExporter.java:207)
      	at org.hibernate.tool.hbm2x.AbstractExporter.getMetadata(AbstractExporter.java:57)
      	at org.hibernate.tool.hbm2x.AbstractExporter.setupContext(AbstractExporter.java:178)
      	at org.hibernate.tool.hbm2x.AbstractExporter.start(AbstractExporter.java:105)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at org.jboss.tools.hibernate.runtime.common.Util.invokeMethod(Util.java:43)
      	at org.jboss.tools.hibernate.runtime.common.AbstractExporterFacade.start(AbstractExporterFacade.java:72)
      	at org.hibernate.eclipse.console.wizards.NewConfigurationWizard.openContentStream(NewConfigurationWizard.java:301)
      	at org.hibernate.eclipse.console.wizards.NewConfigurationWizard.access$2(NewConfigurationWizard.java:295)
      	at org.hibernate.eclipse.console.wizards.NewConfigurationWizard$1.getInitialContents(NewConfigurationWizard.java:163)
      	at org.eclipse.ui.dialogs.WizardNewFileCreationPage.createNewFile(WizardNewFileCreationPage.java:383)
      	at org.hibernate.eclipse.console.wizards.NewConfigurationWizard.performFinish(NewConfigurationWizard.java:198)
      	at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:775)
      	at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:414)
      	at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:622)
      	at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
      	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
      	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
      	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5663)
      	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1386)
      	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4931)
      	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4472)
      	at org.eclipse.jface.window.Window.runEventLoop(Window.java:822)
      	at org.eclipse.jface.window.Window.open(Window.java:798)
      	at org.eclipse.ui.internal.handlers.WizardHandler$New.executeHandler(WizardHandler.java:272)
      	at org.eclipse.ui.internal.handlers.WizardHandler.execute(WizardHandler.java:293)
      	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:294)
      	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:96)
      	at jdk.internal.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
      	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:320)
      	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:254)
      	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:164)
      	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156)
      	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:497)
      	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:490)
      	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
      	at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:403)
      	at org.eclipse.ui.internal.actions.CommandAction.runWithEvent(CommandAction.java:154)
      	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:568)
      	at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:400)
      	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
      	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5663)
      	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1386)
      	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4931)
      	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4472)
      	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
      	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
      	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
      	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
      	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:636)
      	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
      	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563)
      	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151)
      	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)
      	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
      	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
      	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
      	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
      	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
      	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
      	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
      	at org.eclipse.equinox.launcher.Main.run(Main.java:1501)
      	at org.eclipse.equinox.launcher.Main.main(Main.java:1474)
      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)
      	at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:54)
      	at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:137)
      	at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:35)
      	at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:94)
      	at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263)
      	... 89 more
      

      Attachments

        1. Screenshot 2019-04-11 15.26.00.png
          Screenshot 2019-04-11 15.26.00.png
          456 kB
        2. JBIDE-26569-import.mov
          12.99 MB
        3. JBIDE-26569-copy-2.mov
          8.88 MB
        4. JBIDE-26569-copy-1.mov
          9.22 MB
        5. JBIDE-26569-console.mov
          4.63 MB
        6. image-2019-03-08-10-38-30-318.png
          image-2019-03-08-10-38-30-318.png
          329 kB

        Issue Links

          Activity

            People

              kaers@redhat.com Koen Aers
              jkopriva@redhat.com Josef Kopriva
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: