Index: lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java =================================================================== diff -u -r1307599981af4c3f63c2da571c07e150d4713e8d -r0882976efca43e50447e828dec31b0eb8b6211e5 --- lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision 1307599981af4c3f63c2da571c07e150d4713e8d) +++ lams_common/src/java/org/lamsfoundation/lams/rating/service/RatingService.java (.../RatingService.java) (revision 0882976efca43e50447e828dec31b0eb8b6211e5) @@ -243,7 +243,7 @@ isCommentsByOtherUsersRequired, userId); //get all data from DB - List userRatings = ratingDAO.getRatingsByUser(contentId, userId.intValue()); + List userRatings = userId == null ? null : ratingDAO.getRatingsByUser(contentId, userId.intValue()); List itemsStatistics; if (isSingleItem) { itemsStatistics = toolSessionId == null @@ -273,17 +273,19 @@ ItemRatingCriteriaDTO criteriaDto = new ItemRatingCriteriaDTO(); criteriaDto.setRatingCriteria(criteria); - // set user's rating - Rating userRating = null; - for (Rating userRatingIter : userRatings) { - if (userRatingIter.getItemId().equals(itemId) - && userRatingIter.getRatingCriteria().getRatingCriteriaId().equals(criteriaId)) { - userRating = userRatingIter; + if (userId != null) { + // set user's rating + Rating userRating = null; + for (Rating userRatingIter : userRatings) { + if (userRatingIter.getItemId().equals(itemId) + && userRatingIter.getRatingCriteria().getRatingCriteriaId().equals(criteriaId)) { + userRating = userRatingIter; + } } + String userRatingStr = userRating == null ? "" : numberFormat.format(userRating.getRating()); + criteriaDto.setUserRating(userRatingStr); } - String userRatingStr = userRating == null ? "" : numberFormat.format(userRating.getRating()); - criteriaDto.setUserRating(userRatingStr); - + // check if there is any data returned from DB regarding this item and criteria Object[] itemStatistics = null; for (Object[] itemStatisticsIter : itemsStatistics) {