diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/AssetRepository.java b/ccm-cms/src/main/java/org/librecms/contentsection/AssetRepository.java index d5522c261..b6db2acfa 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/AssetRepository.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/AssetRepository.java @@ -280,7 +280,8 @@ public class AssetRepository final String uuid, final Class type) { final TypedQuery query = entityManager.createNamedQuery( - "Asset.findByUuidAndType", Asset.class); + "Asset.findByUuidAndType", Asset.class + ); query.setParameter("uuid", uuid); query.setParameter("type", type); setAuthorizationParameters(query); @@ -721,7 +722,13 @@ public class AssetRepository final boolean isSystemUser = shiro.isSystemUser(); final boolean isAdmin = permissionChecker.isPermitted("*"); - query.setParameter("roles", roles); + // The roles collection is passed to an IN JPQL query. JPQL/SQL + // does not allow empty collections as parameter of IN. But null works... + if (roles.isEmpty()) { + query.setParameter("roles", null); + } else { + query.setParameter("roles", roles); + } query.setParameter("isSystemUser", isSystemUser); query.setParameter("isAdmin", isAdmin); } diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java index d0ed104a1..e1642c20c 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/ContentItemRepository.java @@ -782,7 +782,7 @@ public class ContentItemRepository final boolean isAdmin = permissionChecker.isPermitted("*"); // The roles collection is passed to an IN JPQL query. JPQL/SQL - // does not allow empty collections as paramete of IN. But null works... + // does not allow empty collections as parameter of IN. But null works... if (roles.isEmpty()) { query.setParameter("roles", null); } else {