FooBarTest#testQuery is failing because a Oracle DATE values include time up to seconds. This method executes the following: {{list = s.createQuery( "from Foo foo where ? = some elements(foo.component.importantDates)" ) .setParameter( 0, new Date(), StandardBasicTypes.DATE ) .list(); Unless the value is within a half second of what was persisted, no results will be returned and the test will fail. The test will pass if foo.getTimestamp() is bound instead. This is because Foo#onSave initializes the timestamp property to the current time, and the same value is ultimately added to {{Foo.component.importantDates. |