Index: lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java =================================================================== diff -u -r7eef220bc1575595385b722a0c337359ca02a397 -r81c8f8f5feb85c3614f8e104a70328b8c8b544d3 --- lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 7eef220bc1575595385b722a0c337359ca02a397) +++ lams_tool_assessment/src/java/org/lamsfoundation/lams/tool/assessment/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision 81c8f8f5feb85c3614f8e104a70328b8c8b544d3) @@ -364,6 +364,7 @@ : assessmentPO.getQuestions(); Set oldReferences = (assessmentPO == null) ? new HashSet() : assessmentPO.getQuestionReferences(); + AssessmentUser assessmentUser = null; if (assessmentPO == null) { // new Assessment, create it. @@ -372,6 +373,7 @@ } else { Long uid = assessmentPO.getUid(); + assessmentUser = assessmentPO.getCreatedBy(); PropertyUtils.copyProperties(assessmentPO, assessment); // copyProperties() above may result in "collection assigned to two objects in a session" exception @@ -390,14 +392,16 @@ } // *******************************Handle user******************* - // try to get form system session - HttpSession ss = SessionManager.getSession(); - // get back login user DTO - UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); - AssessmentUser assessmentUser = service.getUserByIDAndContent(new Long(user.getUserID().intValue()), - assessmentPO.getContentId()); if (assessmentUser == null) { - assessmentUser = new AssessmentUser(user, assessmentPO); + // try to get form system session + HttpSession ss = SessionManager.getSession(); + // get back login user DTO + UserDTO user = (UserDTO) ss.getAttribute(AttributeNames.USER); + assessmentUser = service.getUserByIDAndContent(new Long(user.getUserID().intValue()), + assessmentPO.getContentId()); + if (assessmentUser == null) { + assessmentUser = new AssessmentUser(user, assessmentPO); + } } assessmentPO.setCreatedBy(assessmentUser);