Skip to content

Commit 0663728

Browse files
committed
HHH-9710 - IllegalArgumentException passing null as parameter value with explicit TemporalType
(cherry picked from commit f940c72)
1 parent 5169f77 commit 0663728

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

hibernate-entitymanager/src/test/java/org/hibernate/jpa/test/query/DateTimeParameterTest.java

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@
66
*/
77
package org.hibernate.jpa.test.query;
88

9+
import java.util.Date;
10+
import java.util.GregorianCalendar;
11+
import java.util.List;
912
import javax.persistence.Entity;
1013
import javax.persistence.EntityManager;
1114
import javax.persistence.Id;
1215
import javax.persistence.Query;
1316
import javax.persistence.Table;
1417
import javax.persistence.Temporal;
1518
import javax.persistence.TemporalType;
16-
import java.util.Date;
17-
import java.util.GregorianCalendar;
18-
import java.util.List;
1919

2020
import org.hibernate.jpa.test.BaseEntityManagerFunctionalTestCase;
2121

@@ -56,6 +56,23 @@ public void testBindingCalendarAsDate() {
5656
deleteTestData();
5757
}
5858

59+
@Test
60+
public void testBindingNulls() {
61+
EntityManager em = getOrCreateEntityManager();
62+
em.getTransaction().begin();
63+
64+
try {
65+
Query query = em.createQuery( "from Thing t where t.someDate = :aDate or t.someTime = :aTime or t.someTimestamp = :aTimestamp" );
66+
query.setParameter( "aDate", (Date) null, TemporalType.DATE );
67+
query.setParameter( "aTime", (Date) null, TemporalType.DATE );
68+
query.setParameter( "aTimestamp", (Date) null, TemporalType.DATE );
69+
}
70+
finally {
71+
em.getTransaction().rollback();
72+
em.close();
73+
}
74+
}
75+
5976
private void createTestData() {
6077
EntityManager em = getOrCreateEntityManager();
6178
em.getTransaction().begin();

0 commit comments

Comments
 (0)