You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by ev...@apache.org on 2010/02/08 13:40:56 UTC
svn commit: r907638 - in /cayenne/main/branches/STABLE-2.0/cayenne:
cayenne-java/src/cayenne/java/org/apache/cayenne/dba/
cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/
cayenne-other/release-notes/
Author: evgeny
Date: Mon Feb 8 12:40:56 2010
New Revision: 907638
URL: http://svn.apache.org/viewvc?rev=907638&view=rev
Log:
CAY-1388
Can't bind java.util.Date value in SQL Template
Modified:
cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/dba/TypesMapping.java
cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/BindDirectiveTst.java
cayenne/main/branches/STABLE-2.0/cayenne/cayenne-other/release-notes/RELEASE-NOTES-2.0-SNAPSHOT.txt
Modified: cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/dba/TypesMapping.java
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/dba/TypesMapping.java?rev=907638&r1=907637&r2=907638&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/dba/TypesMapping.java (original)
+++ cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/cayenne/java/org/apache/cayenne/dba/TypesMapping.java Mon Feb 8 12:40:56 2010
@@ -200,6 +200,7 @@
javaSqlEnum.put(JAVA_SHORT, new Integer(Types.SMALLINT));
javaSqlEnum.put(JAVA_BYTE, new Integer(Types.TINYINT));
javaSqlEnum.put(JAVA_TIME, new Integer(Types.TIME));
+ javaSqlEnum.put(JAVA_UTILDATE, new Integer(Types.TIMESTAMP));
javaSqlEnum.put(JAVA_TIMESTAMP, new Integer(Types.TIMESTAMP));
// add primitives
Modified: cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/BindDirectiveTst.java
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/BindDirectiveTst.java?rev=907638&r1=907637&r2=907638&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/BindDirectiveTst.java (original)
+++ cayenne/main/branches/STABLE-2.0/cayenne/cayenne-java/src/tests/java/org/apache/cayenne/access/jdbc/BindDirectiveTst.java Mon Feb 8 12:40:56 2010
@@ -19,8 +19,11 @@
package org.apache.cayenne.access.jdbc;
import java.sql.Connection;
+import java.sql.Timestamp;
import java.util.ArrayList;
+import java.util.Calendar;
import java.util.Collections;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -44,6 +47,57 @@
deleteTestData();
}
+ public void testBindTimestamp() throws Exception {
+ Map parameters = new HashMap();
+ parameters.put("id", new Integer(1));
+ parameters.put("name", "ArtistWithDOB");
+ Calendar cal = Calendar.getInstance();
+ cal.clear();
+ cal.set(2010, 2, 8);
+ parameters.put("dob", new Timestamp(cal.getTime().getTime()));
+
+ //without JDBC usage
+ Map row = performInsertForParameters(parameters, false, 1);
+ assertEquals(parameters.get("name"), row.get("ARTIST_NAME"));
+ assertEquals(cal.getTime(), row.get("DATE_OF_BIRTH"));
+ assertNotNull(row.get("DATE_OF_BIRTH"));
+ assertEquals(Date.class, row.get("DATE_OF_BIRTH").getClass());
+ }
+
+ public void testBindSQLDate() throws Exception {
+ Map parameters = new HashMap();
+ parameters.put("id", new Integer(1));
+ parameters.put("name", "ArtistWithDOB");
+ Calendar cal = Calendar.getInstance();
+ cal.clear();
+ cal.set(2010, 2, 8);
+ parameters.put("dob", new java.sql.Date(cal.getTime().getTime()));
+
+ //without JDBC usage
+ Map row = performInsertForParameters(parameters, false, 1);
+ assertEquals(parameters.get("name"), row.get("ARTIST_NAME"));
+ assertEquals(parameters.get("dob"), row.get("DATE_OF_BIRTH"));
+ assertNotNull(row.get("DATE_OF_BIRTH"));
+ assertEquals(Date.class, row.get("DATE_OF_BIRTH").getClass());
+ }
+
+ public void testBindUtilDate() throws Exception {
+ Map parameters = new HashMap();
+ parameters.put("id", new Integer(1));
+ parameters.put("name", "ArtistWithDOB");
+ Calendar cal = Calendar.getInstance();
+ cal.clear();
+ cal.set(2010, 2, 8);
+ parameters.put("dob", cal.getTime());
+
+ //without JDBC usage
+ Map row = performInsertForParameters(parameters, false, 1);
+ assertEquals(parameters.get("name"), row.get("ARTIST_NAME"));
+ assertEquals(parameters.get("dob"), row.get("DATE_OF_BIRTH"));
+ assertNotNull(row.get("DATE_OF_BIRTH"));
+ assertEquals(Date.class, row.get("DATE_OF_BIRTH").getClass());
+ }
+
public void testBindingForCollection() throws Exception {
// insert 3 artists
Map parameters;
Modified: cayenne/main/branches/STABLE-2.0/cayenne/cayenne-other/release-notes/RELEASE-NOTES-2.0-SNAPSHOT.txt
URL: http://svn.apache.org/viewvc/cayenne/main/branches/STABLE-2.0/cayenne/cayenne-other/release-notes/RELEASE-NOTES-2.0-SNAPSHOT.txt?rev=907638&r1=907637&r2=907638&view=diff
==============================================================================
--- cayenne/main/branches/STABLE-2.0/cayenne/cayenne-other/release-notes/RELEASE-NOTES-2.0-SNAPSHOT.txt (original)
+++ cayenne/main/branches/STABLE-2.0/cayenne/cayenne-other/release-notes/RELEASE-NOTES-2.0-SNAPSHOT.txt Mon Feb 8 12:40:56 2010
@@ -24,6 +24,7 @@
CAY-1279 Passing null values in query parameters
CAY-1306 Binding Collection in Parameters for SQLTemplate is not working
CAY-1323 oracle.sql.TIMESTAMP in Result of query (only part of solution to fix explicit type mapping)
+CAY-1388 Can't bind java.util.Date value in SQL Template
----------------------------------
Release: 2.0.4