Uploaded image for project: 'ODE'
  1. ODE
  2. ODE-292

ClassCastException: oracle.sql.TIMESTAMP with time external variable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.1.1
    • 1.2
    • BPEL Runtime
    • None

    Description

      The current external variable code assumes time/date values extracted from the resultset are either java.util.Date, java.sql.Time, or java.sql.Timestamp... but Oracle's JDBC implementation is "special" and breaks our code,

      23:06:28,573 ERROR [JacobVPU] Method "run" in class "org.apache.ode.bpel.runtime
      .ASSIGN" threw an unexpected exception.
      java.lang.ClassCastException: oracle.sql.TIMESTAMP
      at org.apache.ode.bpel.extvar.jdbc.DbExternalVariable$Column.toText(DbEx
      ternalVariable.java:439)
      at org.apache.ode.bpel.extvar.jdbc.DbExternalVariable.addElement(DbExter
      nalVariable.java:278)
      at org.apache.ode.bpel.extvar.jdbc.DbExternalVariable.renderXmlRow(DbExt
      ernalVariable.java:262)
      at org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.readValue(
      JdbcExternalVariableModule.java:292)
      at org.apache.ode.bpel.engine.extvar.ExternalVariableManager.read(Extern
      alVariableManager.java:139)
      at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.readExtVar(BpelRunt
      imeContextImpl.java:1350)
      at org.apache.ode.bpel.runtime.ScopeFrame.initializeVariable(ScopeFrame.
      java:233)
      at org.apache.ode.bpel.runtime.ACTIVITY.initializeVariable(ACTIVITY.java
      :164)
      at org.apache.ode.bpel.runtime.ASSIGN.evalLValue(ASSIGN.java:125)
      at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:348)
      at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:80)
      at sun.reflect.GeneratedMethodAccessor183.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
      sorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:4
      51)
      at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
      at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntime
      ContextImpl.java:831)
      at org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(Pa
      rtnerLinkMyRoleImpl.java:197)
      at org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java
      :194)
      at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.ja
      va:362)
      at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineIm
      pl.java:326)
      at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerIm
      pl.java:373)
      at com.intalio.pxe.csched.SimpleScheduler$4$1.call(SimpleScheduler.java:
      297)
      at com.intalio.pxe.csched.SimpleScheduler$4$1.call(SimpleScheduler.java:
      296)
      at com.intalio.pxe.csched.SimpleScheduler.execTransaction(SimpleSchedule
      r.java:135)
      at com.intalio.pxe.csched.SimpleScheduler$4.call(SimpleScheduler.java:29
      5)
      at com.intalio.pxe.csched.SimpleScheduler$4.call(SimpleScheduler.java:29
      2)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
      at java.util.concurrent.FutureTask.run(FutureTask.java:123)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
      utor.java:650)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
      .java:675)
      at java.lang.Thread.run(Thread.java:595)
      23:06:28,573 ERROR [BpelEngineImpl] Scheduled job failed; jobDetail={type=INVOKE
      _INTERNAL, mexid=3127, pid=

      {http://example.com/NewDiagram/Pool0}

      Pool0-1}
      java.lang.RuntimeException: java.lang.ClassCastException: oracle.sql.TIMESTAMP
      at org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:4
      64)
      at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
      at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntime
      ContextImpl.java:831)
      at org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(Pa

      Attachments

        Activity

          People

            Unassigned Unassigned
            boisvert Alex Boisvert
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: