Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/InstructionFiles.java =================================================================== diff -u -r2437f5fc533ea6acaf8a86a9a703a5909b456516 -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/InstructionFiles.java (.../InstructionFiles.java) (revision 2437f5fc533ea6acaf8a86a9a703a5909b456516) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/InstructionFiles.java (.../InstructionFiles.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -83,6 +83,8 @@ Object obj = null; try { obj = super.clone(); + //never clone key! + ((InstructionFiles)obj).setUid(null); } catch (CloneNotSupportedException e) { log.error("When clone " + InstructionFiles.class + " failed"); } Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java =================================================================== diff -u -r87916b2e9c4406342e26149d731a5ab070f4d4e0 -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java (.../SubmissionDetails.java) (revision 87916b2e9c4406342e26149d731a5ab070f4d4e0) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmissionDetails.java (.../SubmissionDetails.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -175,6 +175,8 @@ Object obj = null; try { obj = super.clone(); + //never clone key! + ((SubmissionDetails)obj).setSubmissionID(null); if(this.report != null) ((SubmissionDetails)obj).report = (SubmitFilesReport) this.report.clone(); } catch (CloneNotSupportedException e) { Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesContent.java =================================================================== diff -u -rb9ef7102d5de177b2caeaa920e9cfce8996267ed -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesContent.java (.../SubmitFilesContent.java) (revision b9ef7102d5de177b2caeaa920e9cfce8996267ed) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesContent.java (.../SubmitFilesContent.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -302,6 +302,8 @@ Object obj = null; try { obj = super.clone(); + //never clone key! + ((SubmitFilesContent)obj).setContentID(null); //clone SubmitFIleSession object if(toolSession != null ){ Iterator iter = toolSession.iterator(); @@ -319,7 +321,7 @@ ((SubmitFilesContent)obj).instructionFiles= set; } } catch (CloneNotSupportedException e) { - log.error("When clone " + SubmissionDetails.class + " failed"); + log.error("When clone " + SubmitFilesContent.class + " failed"); } return obj; Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesReport.java =================================================================== diff -u -rde9ee5f6274f17bb25bbba6f8ea3038cfebd5a90 -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesReport.java (.../SubmitFilesReport.java) (revision de9ee5f6274f17bb25bbba6f8ea3038cfebd5a90) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesReport.java (.../SubmitFilesReport.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -101,6 +101,8 @@ Object obj = null; try { obj = super.clone(); + //never clone key! + ((SubmitFilesReport)obj).setReportID(null); } catch (CloneNotSupportedException e) { log.error("When clone " + SubmitFilesReport.class + " failed"); } Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java =================================================================== diff -u -r87916b2e9c4406342e26149d731a5ab070f4d4e0 -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java (.../SubmitFilesSession.java) (revision 87916b2e9c4406342e26149d731a5ab070f4d4e0) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/SubmitFilesSession.java (.../SubmitFilesSession.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -103,6 +103,8 @@ Object obj = null; try { obj = super.clone(); + //never clone key! + ((SubmitFilesSession)obj).setSessionID(null); //clone SubmissionDetails object if(submissionDetails != null){ Iterator iter = submissionDetails.iterator(); Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitFilesSessionDAO.java =================================================================== diff -u -r837aa6d15c08f6d4b1cd80b7b4cc3d56e494c9ed -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitFilesSessionDAO.java (.../SubmitFilesSessionDAO.java) (revision 837aa6d15c08f6d4b1cd80b7b4cc3d56e494c9ed) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/dao/hibernate/SubmitFilesSessionDAO.java (.../SubmitFilesSessionDAO.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -36,6 +36,7 @@ */ public void createSession(SubmitFilesSession submitSession) { this.getHibernateTemplate().save(submitSession); + this.getHibernateTemplate().flush(); } public List getSubmitFilesSessionByContentID(Long contentID){ Index: lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java =================================================================== diff -u -r7b1c6b460337d9cd62f8350d620d7915eae800b8 -r718baa8ebbfe477c068a31b9401bafa455238999 --- lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision 7b1c6b460337d9cd62f8350d620d7915eae800b8) +++ lams_tool_sbmt/src/java/org/lamsfoundation/lams/tool/sbmt/service/SubmitFilesService.java (.../SubmitFilesService.java) (revision 718baa8ebbfe477c068a31b9401bafa455238999) @@ -118,8 +118,9 @@ SubmitFilesContent toContent = (SubmitFilesContent) fromContent.clone(); //reset some new attributes for toContent toContent.setContentID(toContentId); + //clear ToolSession toContent.setToolSession(new TreeSet()); - + submitFilesContentDAO.insert(toContent); } /** @@ -345,7 +346,7 @@ submitSession.setStatus(new Integer(SubmitFilesSession.INCOMPLETE)); submitSession.setContent(submitContent); submitFilesSessionDAO.createSession(submitSession); - log.debug("Survey session created"); + log.debug("Submit File session created"); } catch (DataAccessException e) {