Index: lams_tool_preview/src/java/org/lamsfoundation/lams/tool/peerreview/util/EmailAnalysisBuilder.java =================================================================== diff -u -reeb8faaea5372ccf5445d7172f726931e9f26098 -r465a1ad5e6eac679629e33daa695ab9d724ec0fa --- lams_tool_preview/src/java/org/lamsfoundation/lams/tool/peerreview/util/EmailAnalysisBuilder.java (.../EmailAnalysisBuilder.java) (revision eeb8faaea5372ccf5445d7172f726931e9f26098) +++ lams_tool_preview/src/java/org/lamsfoundation/lams/tool/peerreview/util/EmailAnalysisBuilder.java (.../EmailAnalysisBuilder.java) (revision 465a1ad5e6eac679629e33daa695ab9d724ec0fa) @@ -166,7 +166,7 @@ // must not be called until data analysis calculations are done - needs averageOfAverages protected Double getSPAFactor() { if (spa == null) { - spa = averageOfAverages > 0 ? individualCriteriaAverage / averageOfAverages : 0D; + spa = (averageOfAverages > 0 && individualCriteriaAverage != null) ? individualCriteriaAverage / averageOfAverages : 0D; } return spa; } @@ -311,12 +311,13 @@ itemMap.put(rating.getRatingCriteria().getRatingCriteriaId(), sd); } } - sd.peerRatingIncSelf += rating.getRating(); + Float newRating = rating.getRating() != null ? rating.getRating() : 0.0f; + sd.peerRatingIncSelf += newRating; sd.numRatingsIncSelf++; if ( rating.getItemId().longValue() == rating.getLearner().getUserId().longValue() ) { - sd.selfRating = rating.getRating(); + sd.selfRating = newRating; } else { - sd.peerRatingExcSelf += rating.getRating(); + sd.peerRatingExcSelf += newRating; sd.numRatingsExcSelf++; } }