Uploaded image for project: 'Red Hat Process Automation Manager'
  1. Red Hat Process Automation Manager
  2. RHPAM-4471

Upgrade to Spring Boot 2.6.6 breaks execution

    XMLWordPrintable

Details

    • Bug
    • Resolution: Obsolete
    • Major
    • None
    • None
    • Build and Assembly
    • None
    • 2022 Week 29-31 (from Jul 18), 2022 Week 32-34 (from Aug 8)

    Description

      After upgrading to Spring Boot 2.6.6, the execution is broken.

      Looks we need to add some xsd schema definition for our custom entries:

      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/jbpm/springboot/autoconfigure/JBPMAutoConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.boot.InvalidMappingException: Could not parse mapping document: jar:file:/home/alberto/redhat/cases/03236087/original/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/jbpm-kie-services-7.69.0.Final.jar!/META-INF/Servicesorm.xml (INPUT_STREAM)
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.20.jar!/:5.3.20]
      	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.20.jar!/:5.3.20]
      	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.20.jar!/:5.3.20]
      	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-2.7.0.jar!/:2.7.0]
      	at com.company.service.Application.main(Application.java:10) ~[classes!/:1.0-SNAPSHOT]
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
      	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
      	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
      	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
      	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
      	at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) ~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
      	at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
      	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[business-application-service-1.0-SNAPSHOT.jar:1.0-SNAPSHOT]
      Caused by: org.hibernate.boot.InvalidMappingException: Could not parse mapping document: jar:file:/home/alberto/redhat/cases/03236087/original/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/jbpm-kie-services-7.69.0.Final.jar!/META-INF/Servicesorm.xml (INPUT_STREAM)
      	at org.hibernate.boot.jaxb.internal.InputStreamXmlSource.doBind(InputStreamXmlSource.java:46) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.jaxb.internal.InputStreamXmlSource.doBind(InputStreamXmlSource.java:38) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.spi.XmlMappingBinderAccess.bind(XmlMappingBinderAccess.java:79) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.model.process.internal.ScanningCoordinator.applyScanResultsToManagedResources(ScanningCoordinator.java:221) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.model.process.internal.ScanningCoordinator.coordinateScan(ScanningCoordinator.java:82) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.prepare(MetadataBuildingProcess.java:107) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:269) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:182) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:52) ~[spring-orm-5.3.20.jar!/:5.3.20]
      	at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) ~[spring-orm-5.3.20.jar!/:5.3.20]
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) ~[spring-orm-5.3.20.jar!/:5.3.20]
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) ~[spring-orm-5.3.20.jar!/:5.3.20]
      	at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) ~[spring-orm-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) ~[spring-beans-5.3.20.jar!/:5.3.20]
      	... 24 common frames omitted
      Caused by: org.hibernate.boot.MappingException: Unable to perform unmarshalling at line number 1043 and column 3. Message: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://xmlns.jcp.org/xml/ns/persistence/orm":named-query}'. One of '{"http://xmlns.jcp.org/xml/ns/persistence/orm":sql-result-set-mapping, "http://xmlns.jcp.org/xml/ns/persistence/orm":mapped-superclass, "http://xmlns.jcp.org/xml/ns/persistence/orm":entity, "http://xmlns.jcp.org/xml/ns/persistence/orm":embeddable, "http://xmlns.jcp.org/xml/ns/persistence/orm":converter}' is expected. : origin(jar:file:/home/alberto/redhat/cases/03236087/original/business-application-service/target/business-application-service-1.0-SNAPSHOT.jar!/BOOT-INF/lib/jbpm-kie-services-7.69.0.Final.jar!/META-INF/Servicesorm.xml)
      	at org.hibernate.boot.jaxb.internal.AbstractBinder.jaxb(AbstractBinder.java:178) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.jaxb.internal.MappingBinder.doBind(MappingBinder.java:61) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.jaxb.internal.AbstractBinder.doBind(AbstractBinder.java:103) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.jaxb.internal.AbstractBinder.bind(AbstractBinder.java:58) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	at org.hibernate.boot.jaxb.internal.InputStreamXmlSource.doBind(InputStreamXmlSource.java:43) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	... 38 common frames omitted
      Caused by: javax.xml.bind.UnmarshalException: null
      	at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:453) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:433) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:405) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at org.hibernate.boot.jaxb.internal.AbstractBinder.jaxb(AbstractBinder.java:172) ~[hibernate-core-5.6.9.Final.jar!/:5.6.9.Final]
      	... 42 common frames omitted
      Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://xmlns.jcp.org/xml/ns/persistence/orm":named-query}'. One of '{"http://xmlns.jcp.org/xml/ns/persistence/orm":sql-result-set-mapping, "http://xmlns.jcp.org/xml/ns/persistence/orm":mapped-superclass, "http://xmlns.jcp.org/xml/ns/persistence/orm":entity, "http://xmlns.jcp.org/xml/ns/persistence/orm":embeddable, "http://xmlns.jcp.org/xml/ns/persistence/orm":converter}' is expected.
      	at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:201) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:132) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:394) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:282) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:482) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3583) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1984) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:789) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at org.apache.xerces.jaxp.validation.ValidatorHandlerImpl.startElement(ValidatorHandlerImpl.java:589) ~[xercesImpl-2.12.0.SP03.jar!/:2.12.0.SP03]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement(ValidatingUnmarshaller.java:71) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.InterningXmlVisitor.startElement(InterningXmlVisitor.java:45) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.StAXEventConnector.handleStartElement(StAXEventConnector.java:231) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.StAXEventConnector.bridge(StAXEventConnector.java:100) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:430) ~[jaxb-runtime-2.3.6.jar!/:2.3.6]
      	... 44 common frames omitted
      

      where Servicesorm.xml from jbpm-kie-services is:

        <named-query name="getProcessInstances">
      
          <query>
            select
            new org.jbpm.kie.services.impl.model.ProcessInstanceDesc(
            log.processInstanceId,
            log.processId,
            log.processName,
            log.processVersion,
            log.status,
            log.externalId,
            log.start,
            log.identity,
            log.processInstanceDescription,
            log.correlationKey,
            log.parentProcessInstanceId,
            log.slaDueDate,
            log.slaCompliance
            )
            from
              ProcessInstanceLog log
            ORDER BY
              log.processId, log.start
          </query>
          <!-- hint name="org.hibernate.timeout" value="200"/ -->
        </named-query>
      
        <named-query name="getProcessInstancesByStatus">
          <query>
            select
            new org.jbpm.kie.services.impl.model.ProcessInstanceDesc(
            log.processInstanceId,
            log.processId,
            log.processName,
            log.processVersion,
            log.status,
            log.externalId,
            log.start,
            log.identity,
            log.processInstanceDescription,
            log.correlationKey,
            log.parentProcessInstanceId,
            log.slaDueDate,
            log.slaCompliance)
      
            from
              ProcessInstanceLog log
            where
              log.status in (:states)
          </query>
          <!-- hint name="org.hibernate.timeout" value="200"/ -->
        </named-query>
      
        <named-query name="getProcessInstancesByStatusAndInitiator">
          <query>
            select
            new org.jbpm.kie.services.impl.model.ProcessInstanceDesc(
            log.processInstanceId,
            log.processId,
            log.processName,
            log.processVersion,
            log.status,
            log.externalId,
            log.start,
            log.identity,
            log.processInstanceDescription,
            log.correlationKey,
            log.parentProcessInstanceId,
            log.slaDueDate,
            log.slaCompliance
              )
            from
              ProcessInstanceLog log
            where
              log.status in (:states) and log.identity = :initiator
          </query>
          <!-- hint name="org.hibernate.timeout" value="200"/ -->
        </named-query>
      ...
      

      Attachments

        Issue Links

          Activity

            People

              afanjula@redhat.com Alberto Fanjul Alonso
              afanjula@redhat.com Alberto Fanjul Alonso
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: