Index: entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/base/QueryHintsHandler.java =================================================================== RCS file: /cvs/glassfish/entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/base/QueryHintsHandler.java,v retrieving revision 1.4 diff -c -w -r1.4 QueryHintsHandler.java *** entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/base/QueryHintsHandler.java 22 May 2007 23:54:24 -0000 1.4 --- entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/base/QueryHintsHandler.java 20 Jun 2007 15:03:26 -0000 *************** *** 333,339 **** void applyToDatabaseQuery(Object valueToApply, DatabaseQuery query) { if (query.isObjectLevelReadQuery()) { ! ((ObjectLevelReadQuery)query).setShouldRefreshIdentityMapResult(((Boolean)valueToApply).booleanValue()); } } } --- 333,345 ---- void applyToDatabaseQuery(Object valueToApply, DatabaseQuery query) { if (query.isObjectLevelReadQuery()) { ! if(((Boolean)valueToApply).booleanValue()) { ! ((ObjectLevelReadQuery)query).setShouldRefreshIdentityMapResult(true); ! query.cascadeByMapping(); ! } else { ! ((ObjectLevelReadQuery)query).setShouldRefreshIdentityMapResult(false); ! query.dontCascadeParts(); ! } } } } Index: entity-persistence-tests/src/java/oracle/toplink/essentials/testing/tests/cmp3/advanced/EntityManagerJUnitTestSuite.java =================================================================== RCS file: /cvs/glassfish/entity-persistence-tests/src/java/oracle/toplink/essentials/testing/tests/cmp3/advanced/EntityManagerJUnitTestSuite.java,v retrieving revision 1.54 diff -c -w -r1.54 EntityManagerJUnitTestSuite.java *** entity-persistence-tests/src/java/oracle/toplink/essentials/testing/tests/cmp3/advanced/EntityManagerJUnitTestSuite.java 4 Jun 2007 19:53:00 -0000 1.54 --- entity-persistence-tests/src/java/oracle/toplink/essentials/testing/tests/cmp3/advanced/EntityManagerJUnitTestSuite.java 20 Jun 2007 15:03:27 -0000 *************** *** 2194,2211 **** --- 2194,2216 ---- // the previously run LOCK and LOCK_NOWAIT have swithed it to true query.setHint(TopLinkQueryHints.REFRESH, false); assertFalse(olrQuery.shouldRefreshIdentityMapResult()); + assertFalse(olrQuery.shouldCascadeByMapping()); // set boolean true query.setHint(TopLinkQueryHints.REFRESH, true); assertTrue(olrQuery.shouldRefreshIdentityMapResult()); + assertTrue(olrQuery.shouldCascadeByMapping()); // check if cascade refresh is enabled // set "false" query.setHint(TopLinkQueryHints.REFRESH, "false"); assertFalse(olrQuery.shouldRefreshIdentityMapResult()); + assertFalse(olrQuery.shouldCascadeByMapping()); // set Boolean.TRUE query.setHint(TopLinkQueryHints.REFRESH, Boolean.TRUE); assertTrue(olrQuery.shouldRefreshIdentityMapResult()); + assertTrue(olrQuery.shouldCascadeByMapping()); // reset to original state query.setHint(TopLinkQueryHints.REFRESH, ""); assertFalse(olrQuery.shouldRefreshIdentityMapResult()); + assertFalse(olrQuery.shouldCascadeByMapping()); em.close(); }