You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by bo...@apache.org on 2008/07/23 04:19:42 UTC

svn commit: r678977 - /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java

Author: boisvert
Date: Tue Jul 22 19:19:42 2008
New Revision: 678977

URL: http://svn.apache.org/viewvc?rev=678977&view=rev
Log:
ODE-346 Unparseable date: oracle.sql.TIMES:00.000TAMP@ec607c

Modified:
    ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java

Modified: ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java?rev=678977&r1=678976&r2=678977&view=diff
==============================================================================
--- ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java (original)
+++ ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/extvar/jdbc/JdbcExternalVariableModule.java Tue Jul 22 19:19:42 2008
@@ -368,10 +368,18 @@
             ResultSet rs = stmt.executeQuery();
             try {
                 if (rs.next()) {
-                    for (Column cr : dbev._columns)  {
-                        Object val = rs.getObject(cr.idx+1);
-                        if (__log.isDebugEnabled()) __log.debug("Result column index "+cr.idx+": "+val);
-                        ret.set(cr.idx,val);
+                    for (Column c : dbev._columns)  {
+                        Object val;
+                        int i = c.idx+1;
+                        if (c.isDate()) val = rs.getDate(i);
+                        else if (c.isTimeStamp()) val = rs.getTimestamp(i);
+                        else if (c.isTime()) val = rs.getTime(i);
+                        else if (c.isInteger()) val = new Long(rs.getLong(i));
+                        else if (c.isReal()) val = new Double(rs.getDouble(i));
+                        else if (c.isBoolean()) val = new Boolean(rs.getBoolean(i));
+                        else val = rs.getObject(i);
+                        if (__log.isDebugEnabled()) __log.debug("Result column index "+c.idx+": "+val);
+                        ret.set(c.idx,val);
                     }
                 } else
                     return null;