2 Replies Latest reply on Jun 2, 2016 7:23 AM by jwieczorek

    jbpm-dashboard +wildfly 8.1.0 + oracle 11g Error in oracleNullSafeSet

    jwieczorek

      Hello,

      I have a problem with jbpm-dashboard (6.4.0.Final) deployment on wildfly 8.1.0 with oracle 11g database.

      I have followed instructions from https://github.com/droolsjbpm/jbpm-dashboard/blob/master/jbpm-dashboard-distributions/src/main/wildfly8/README.md

      and I have following errors while starting my application:

      2016-05-24 17:36:45,452 INFO  [org.jboss.dashboard.workspace.GraphicElementManagerImpl] (MSC service thread 1-2) Deploying to database Skin c:\jbpm\wildfly-8.1.0.Final\standalone\tmp\vfs\temp\tempb87e42a157b53feb\content-e58814d1781eee43\WEB-INF\etc\skins\Default_Skin.zip
      2016-05-24 17:36:45,468 ERROR [org.jboss.dashboard.error.ErrorManager] (MSC service thread 1-2) UNEXPECTED ERROR.
      Error id='1464104205468'
      Error date='24.05.16 17:36'
      
      
      java.lang.ClassNotFoundException: org.jboss.jca.adapters.jdbc.jdk7.WrappedConnectionJDK7 from [Module "deployment.jbpm-dashbuilder-6.4.0.Final-wildfly8.war:main" from Service Module Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389)
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:191)
        at org.jboss.dashboard.database.hibernate.LOBHelper.oracleNullSafeSet(LOBHelper.java:106)
        at org.jboss.dashboard.database.hibernate.LOBHelper.nullSafeSet(LOBHelper.java:200)
        at org.jboss.dashboard.database.hibernate.LOBHelper$Proxy$_$$_WeldClientProxy.nullSafeSet(Unknown Source)
        at org.jboss.dashboard.database.hibernate.BinaryBlobType.nullSafeSet(BinaryBlobType.java:55)
        at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:158)
        at org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2843)
        at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3121)
        at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3581)
        at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:104)
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:463)
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:349)
        at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:350)
        at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56)
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1222)
        at org.jboss.dashboard.database.hibernate.HibernateTransaction.flush(HibernateTransaction.java:182)
        at org.jboss.dashboard.database.hibernate.HibernateTransaction.complete(HibernateTransaction.java:153)
        at org.jboss.dashboard.database.hibernate.HibernateTxFragment.executeInitiator(HibernateTxFragment.java:182)
        at org.jboss.dashboard.database.hibernate.HibernateTxFragment.execute(HibernateTxFragment.java:167)
        at org.jboss.dashboard.workspace.GraphicElementManagerImpl.deployBaseElements(GraphicElementManagerImpl.java:140)
        at org.jboss.dashboard.workspace.GraphicElementManagerImpl.start(GraphicElementManagerImpl.java:80)
        at org.jboss.dashboard.workspace.SkinsManagerImpl.start(SkinsManagerImpl.java:35)
        at org.jboss.dashboard.workspace.SkinsManagerImpl$Proxy$_$$_WeldClientProxy.start(Unknown Source)
        at org.jboss.dashboard.annotation.StartableProcessor.wakeUpStartableBeans(StartableProcessor.java:52)
        at org.jboss.dashboard.Application.start(Application.java:74)
        at org.jboss.dashboard.Application$Proxy$_$$_WeldClientProxy.start(Unknown Source)
        at org.jboss.dashboard.ui.controller.ControllerServlet.init(ControllerServlet.java:62)
        at javax.servlet.GenericServlet.init(GenericServlet.java:244)
        at io.undertow.servlet.core.ManagedServlet$DefaultInstanceStrategy.start(ManagedServlet.java:214)
        at io.undertow.servlet.core.ManagedServlet.createServlet(ManagedServlet.java:119)
        at io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:505)
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:88)
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.start(UndertowDeploymentService.java:72)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
      

       

      and

      2016-05-24 17:36:47,106 INFO  [org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl] (MSC service thread 1-2) HHH000010: On release of batch it still contained JDBC statements
      2016-05-24 17:36:47,106 ERROR [org.jboss.dashboard.annotation.StartableProcessor] (MSC service thread 1-2) Error starting bean org.jboss.dashboard.initialModule.InitialModulesManager$Proxy$_$$_WeldClientProxy: org.hibernate.HibernateException: Error in oracleNullSafeSet
        at org.jboss.dashboard.database.hibernate.LOBHelper.oracleNullSafeSet(LOBHelper.java:191) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.LOBHelper.nullSafeSet(LOBHelper.java:200) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.LOBHelper$Proxy$_$$_WeldClientProxy.nullSafeSet(Unknown Source) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.StringBlobType.nullSafeSet(StringBlobType.java:59) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:158) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2843) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3121) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3581) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:104) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:463) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:349) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:350) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1222) [hibernate-core-4.3.5.Final.jar:4.3.5.Final]
        at org.jboss.dashboard.initialModule.InitialModulesManager$1.txFragment(InitialModulesManager.java:78) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.HibernateTransaction.executeFragment(HibernateTransaction.java:252) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.HibernateTxFragment.executeInitiator(HibernateTxFragment.java:179) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.database.hibernate.HibernateTxFragment.execute(HibernateTxFragment.java:167) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.initialModule.InitialModulesManager.start(InitialModulesManager.java:68) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.initialModule.InitialModulesManager$Proxy$_$$_WeldClientProxy.start(Unknown Source) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.annotation.StartableProcessor.wakeUpStartableBeans(StartableProcessor.java:52) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.Application.start(Application.java:74) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.Application$Proxy$_$$_WeldClientProxy.start(Unknown Source) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        at org.jboss.dashboard.ui.controller.ControllerServlet.init(ControllerServlet.java:62) [dashboard-ui-core-6.4.0.Final.jar:]
        at javax.servlet.GenericServlet.init(GenericServlet.java:244) [jboss-servlet-api_3.1_spec-1.0.0.Final.jar:1.0.0.Final]
        at io.undertow.servlet.core.ManagedServlet$DefaultInstanceStrategy.start(ManagedServlet.java:214) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
        at io.undertow.servlet.core.ManagedServlet.createServlet(ManagedServlet.java:119) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
        at io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:505) [undertow-servlet-1.0.15.Final.jar:1.0.15.Final]
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:88)
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.start(UndertowDeploymentService.java:72)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_79]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_79]
        at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_79]
      Caused by: java.lang.ClassNotFoundException: org.jboss.jca.adapters.jdbc.jdk7.WrappedConnectionJDK7 from [Module "deployment.jbpm-dashbuilder-6.4.0.Final-wildfly8.war:main" from Service Module Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.3.Final]
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.3.Final]
        at java.lang.Class.forName0(Native Method) [rt.jar:1.7.0_79]
        at java.lang.Class.forName(Class.java:191) [rt.jar:1.7.0_79]
        at org.jboss.dashboard.database.hibernate.LOBHelper.oracleNullSafeSet(LOBHelper.java:106) [dashboard-commons-6.4.0.Final.jar:6.4.0.Final]
        ... 34 more
      

       

      It appears that application has started properly:

       

      2016-05-24 17:36:47,121 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-2) JBAS017534: Registered web context: /dashbuilder
      2016-05-24 17:36:47,184 INFO  [org.jboss.as.server] (management-handler-thread - 1) JBAS018565: Replaced deployment "jbpm-dashbuilder-6.4.0.Final-wildfly8.war" with deployment "jbpm-dashbuilder-6.4.0.Final-wildfly8.war"
      2016-05-24 17:36:47,184 INFO  [org.jboss.as.repository] (management-handler-thread - 1) JBAS014901: Content removed from location c:\jbpm\wildfly-8.1.0.Final\standalone\data\content\09\7930941f9c006794949ec9b5bfb09eeff70901\content
      

       

      when I am trying to open link http://localhost:8083/dashbuilder/ I am ending up on login screen, but after providing credentials I am beeing redirect to http://localhost:8083/dashbuilder/index.jsp and I end up on login screen once again. Then I am trying to login again and I am redirected to

      http://localhost:8083/dashbuilder/j_security_check  and I get this error: HTTP method POST is not supported by this URL

       

      I have also tried to use http://localhost:8083/dashbuilder/workspace/jbpm-dashboard address, but I can only get 404 Not found error, after logging in.

       

      When I go to dashbuilder address I get the following warnings on my console:

      10:50:42,295 WARN  [org.jboss.dashboard.ui.NavigationManager] (default task-38) Couldn't reposition navigation to a valid ubication.
      10:50:42,297 WARN  [org.jboss.dashboard.ui.NavigationManager] (default task-38) Couldn't reposition navigation to a valid ubication.
      

       

       

      I have tried a zilions of configuration combinations, and it still does not work.

       

       

      standalone-full.xml datasources:

                      <datasource jta="true" jndi-name="java:jboss/datasources/jbpmDS" pool-name="OracleSqlDS" enabled="true" use-java-context="true" use-ccm="true">
                          <connection-url>jdbc:oracle:thin:@localhost:1521:xe</connection-url>
                          <driver>oracle</driver>
                          <pool>
                              <min-pool-size>0</min-pool-size>
                              <max-pool-size>20</max-pool-size>
                              <prefill>true</prefill>
                          </pool>
                          <security>
                              <user-name>user</user-name>
                              <password>pass</password>
                          </security>
                      </datasource>
                      <drivers>
                          <driver name="oracle" module="com.oracle">
                              <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
                              <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
                          </driver>
                          <driver name="h2" module="com.h2database.h2">
                              <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                          </driver>
                      </drivers>
      

       

      jboss-deployment-structure.xml

      <?xml version="1.0" encoding="UTF-8"?>
      <jboss-deployment-structure>
        <deployment>
          <dependencies>
            <module name="com.oracle" />
            <module name="org.apache.commons.logging"/>
            <module name="org.apache.xerces"/>
            <module name="org.hibernate"/>
            <module name="org.slf4j"/>
            <module name="org.dom4j"/>
          </dependencies>
        </deployment>
      </jboss-deployment-structure>
      

       

      jboss-web.xml

      <?xml version="1.0" encoding="UTF-8"?>
      <jboss-web>
          <context-root>/dashbuilder</context-root>
          <resource-ref>
              <res-ref-name>jdbc/dashbuilder</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <jndi-name>java:jboss/datasources/jbpmDS</jndi-name>
          </resource-ref>
          <security-domain>other</security-domain>
      </jboss-web>
      

       

      I have also changed element of hibernate.cfg.xml :

      from

      <!-- Database connection settings -->
              <property name="connection.datasource">java:comp/env/jdbc/dashbuilder</property>
      

       

      to

              <!-- Database connection settings -->
              <property name="connection.datasource">java:jboss/datasources/jbpmDS</property>
      

       

      PS. kie-wb and jbpm-server works fine with this configuration.

        • 1. Re: jbpm-dashboard +wildfly 8.1.0 + oracle 11g Error in oracleNullSafeSet
          zcc39r

          Yes, dashboard-builder.war contains WEB-INF/lib/ironjacamar-jdbc-1.0.31.Final.jar/org/jboss/jca/adapters/jdbc/jdk6/WrappedConnectionJDK6.class, not an org.jboss.jca.adapters.jdbc.jdk7.WrappedConnectionJDK7 required. So I added a dependency on module org.jboss.ironjacamar.jdbcadapters into jboss-deployment-structure.xml to resolve this problem.

          • 2. Re: jbpm-dashboard +wildfly 8.1.0 + oracle 11g Error in oracleNullSafeSet
            jwieczorek

            Exactly!

            I have added

            <module name="org.jboss.ironjacamar.jdbcadapters" slot="main"/>

            line in my jboss-deployment-structure.xml file and it works.

            Thanks a lot!

            Full jboss-deployment-structure.xml:

            <?xml version="1.0" encoding="UTF-8"?>
            
            
            <jboss-deployment-structure>
              <deployment>
                <dependencies>
                  <module name="com.oracle" slot="main"/>
                  <module name="org.apache.commons.logging"/>
                  <module name="org.apache.xerces"/>
                  <module name="org.hibernate"/>
                  <module name="org.jboss.ironjacamar.jdbcadapters" slot="main"/>
                  <module name="org.slf4j"/>
                  <module name="org.dom4j"/>
                </dependencies>
            
            
              </deployment>
            </jboss-deployment-structure>