Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.java,v diff -u -r1.35 -r1.36 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.java 8 Nov 2012 15:05:38 -0000 1.35 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Forum.java 27 Jun 2013 12:06:16 -0000 1.36 @@ -499,6 +499,17 @@ fromContent.toolContentHandler = forumToolContentHandler; toContent = (Forum) fromContent.clone(); toContent.setContentId(contentId); + + Set topics = toContent.getMessages(); + if (topics != null) { + Iterator iter = topics.iterator(); + while (iter.hasNext()) { + Message msg = (Message) iter.next(); + // clear message forum so that they can be saved when persistent happens + msg.setForum(null); + } + } + return toContent; } Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Message.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Message.java,v diff -u -r1.38 -r1.39 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Message.java 24 Mar 2011 17:56:26 -0000 1.38 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/Message.java 27 Jun 2013 12:06:16 -0000 1.39 @@ -495,7 +495,7 @@ } /** - * @return the set of all messages cloned from this message. See getAuthoredParent(). + * @return the set of all messages cloned from this message. * * @hibernate.set cascade="none" inverse="false" * @hibernate.collection-key column="authored_parent_uid" Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java,v diff -u -r1.111 -r1.112 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java 27 Mar 2013 15:09:55 -0000 1.111 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/service/ForumService.java 27 Jun 2013 12:06:16 -0000 1.112 @@ -499,9 +499,8 @@ } public Long getToolDefaultContentIdBySignature(String toolSignature) { - Long contentId = null; - contentId = new Long(toolService.getToolDefaultContentIdBySignature(toolSignature)); - if (contentId == null) { + Long contentId = new Long(toolService.getToolDefaultContentIdBySignature(toolSignature)); + if (contentId.equals(0L)) { String error = "Could not retrieve default content id for this tool"; ForumService.log.error(error); throw new ForumException(error); @@ -1037,19 +1036,8 @@ defaultContent.getConditions().add(getForumOutputFactory().createDefaultTopicDateToAnswersCondition(defaultContent)); } // get default content by given ID. - Forum content = new Forum(); - content = Forum.newInstance(defaultContent, contentID, forumToolContentHandler); + Forum content = Forum.newInstance(defaultContent, contentID, forumToolContentHandler); - Set topics = content.getMessages(); - if (topics != null) { - Iterator iter = topics.iterator(); - while (iter.hasNext()) { - Message msg = (Message) iter.next(); - // clear message forum so that they can be saved when persistent happens - msg.setForum(null); - } - } - return content; }