Index: lams_common/src/java/org/lamsfoundation/lams/security/SecurityDAO.java =================================================================== diff -u -rb3b03858efeef1c37e36993757f56374a9f2b9f3 -rf0c17850a35fb02594aaff53a4a175b536eba889 --- lams_common/src/java/org/lamsfoundation/lams/security/SecurityDAO.java (.../SecurityDAO.java) (revision b3b03858efeef1c37e36993757f56374a9f2b9f3) +++ lams_common/src/java/org/lamsfoundation/lams/security/SecurityDAO.java (.../SecurityDAO.java) (revision f0c17850a35fb02594aaff53a4a175b536eba889) @@ -20,7 +20,6 @@ * **************************************************************** */ - package org.lamsfoundation.lams.security; import java.io.Serializable; @@ -80,7 +79,7 @@ query.setParameter("orgId", orgId); query.setParameter("userId", userId); query.setParameterList("roles", roles); - return !query.list().isEmpty(); + return !query.setCacheable(true).list().isEmpty(); } @Override @@ -100,12 +99,13 @@ SQLQuery query = getSession().createSQLQuery(SecurityDAO.CHECK_LESSON_LEARNER); query.setLong("lessonId", lessonId); query.setInteger("user_id", userId); - return !query.list().isEmpty(); + return !query.setCacheable(true).list().isEmpty(); } @Override public boolean isLessonMonitor(Long lessonId, Integer userId, boolean ownerAccepted) { - boolean result = !doFind(SecurityDAO.CHECK_LESSON_MONITOR, new Object[] { lessonId, userId }).isEmpty(); + boolean result = !doFindCacheable(SecurityDAO.CHECK_LESSON_MONITOR, new Object[] { lessonId, userId }) + .isEmpty(); Lesson lesson = null; if (!result && ownerAccepted) { lesson = (Lesson) find(Lesson.class, lessonId); @@ -116,6 +116,6 @@ @Override public boolean isSysadmin(Integer userId) { - return !doFind(SecurityDAO.CHECK_SYSADMIN, new Object[] { userId }).isEmpty(); + return !doFindCacheable(SecurityDAO.CHECK_SYSADMIN, new Object[] { userId }).isEmpty(); } } \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java =================================================================== diff -u -r2188972474f8d186d6811e3dea2e4136be669335 -rf0c17850a35fb02594aaff53a4a175b536eba889 --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 2188972474f8d186d6811e3dea2e4136be669335) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision f0c17850a35fb02594aaff53a4a175b536eba889) @@ -320,7 +320,7 @@ properties.put("userOrganisation.user.userId", userId); properties.put("userOrganisation.organisation.organisationId", orgId); properties.put("role.name", roleName); - if (baseDAO.findByProperties(UserOrganisationRole.class, properties).size() == 0) { + if (baseDAO.findByProperties(UserOrganisationRole.class, properties, true).size() == 0) { return false; } return true;