Uploaded image for project: 'LAMS Development'
  1. LAMS Development
  2. LDEV-1743

Be able to remove/update and change order of threads

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3
    • Fix Version/s: 2.4, 2.3.5
    • Component/s: Tool Forum
    • Labels:
      None

      Description

      Post 2.1 life

      In order to be consistent with other tools, Forum should be able to move threads up and down as well as have the pen for edit and delete in the Topic view (see snap1)

        Activity

        Hide
        jundirl Jun-Dir Liew added a comment -
        Hi,

        We updated a server with this code and found this error...

        2010-04-13 13:05:03,451 [TP-Processor3:] FATAL org.lamsfoundation.lams.web.util.CustomStrutsExceptionHandler - org.springframework.orm.hibernate3.HibernateSystemException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId; nested exception is org.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId
        org.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId
                at org.hibernate.tuple.PojoTuplizer.setPropertyValuesWithOptimizer(PojoTuplizer.java:203)
                at org.hibernate.tuple.PojoTuplizer.setPropertyValues(PojoTuplizer.java:173)
                at org.hibernate.persister.entity.BasicEntityPersister.setPropertyValues(BasicEntityPersister.java:2900)
                at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:113)
                at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:510)
                at org.hibernate.loader.Loader.doQuery(Loader.java:419)
                at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:210)
                at org.hibernate.loader.Loader.doList(Loader.java:1561)
                at org.hibernate.loader.Loader.list(Loader.java:1544)
                at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)
                at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
                at org.hibernate.impl.SessionImpl.list(SessionImpl.java:830)
                at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
                at org.springframework.orm.hibernate3.HibernateTemplate$31.doInHibernate(HibernateTemplate.java:853)
                at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:366)
                at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:844)
                at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:840)
                at org.lamsfoundation.lams.tool.forum.persistence.MessageDao.getRootTopics(MessageDao.java:78)
                at org.lamsfoundation.lams.tool.forum.service.ForumService.getRootTopics(ForumService.java:417)
                at sun.reflect.GeneratedMethodAccessor1107.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                at java.lang.reflect.Method.invoke(Method.java:597)
                at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287)
                at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:165)
                at $Proxy53.getRootTopics(Unknown Source)
                at org.lamsfoundation.lams.tool.forum.web.actions.LearningAction.viewForum(LearningAction.java:260)
                at org.lamsfoundation.lams.tool.forum.web.actions.LearningAction.execute(LearningAction.java:98)
                at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
                at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
                at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
                at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                at org.lamsfoundation.lams.web.filter.LocaleFilter.doFilterInternal(LocaleFilter.java:142)
                at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                at org.lamsfoundation.lams.web.session.SystemSessionFilter.doFilter(SystemSessionFilter.java:71)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        ...
        Caused by: net.sf.cglib.beans.BulkBeanException
                at org.lamsfoundation.lams.tool.forum.persistence.Message$$BulkBeanByCGLIB$$968686c1.setPropertyValues(<generated>)
                at org.hibernate.tuple.PojoTuplizer.setPropertyValuesWithOptimizer(PojoTuplizer.java:200)
                ... 69 more
        Caused by: java.lang.NullPointerException

        2010-04-13 13:05:03,453 [TP-Processor3:] ERROR org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter - Unexpected exception on closing Hibernate Session
        org.hibernate.HibernateException: Don't dereference a collection with cascade="all-delete-orphan": org.lamsfoundation.lams.tool.forum.persistence.Message.attachments
                at org.hibernate.engine.Collections.processDereferencedCollection(Collections.java:70)
                at org.hibernate.engine.Collections.processUnreachableCollection(Collections.java:38)
                at org.hibernate.event.def.AbstractFlushingEventListener.flushCollections(AbstractFlushingEventListener.java:211)
                at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:71)
                at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)
                at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:716)
                at org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter.closeSession(CustomizedOpenSessionInViewFilter.java:77)
                at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:184)
                at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
                at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
                at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
                at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
                at org.lamsfoundation.lams.integration.security.SingleSignOn.invoke(SingleSignOn.java:121)
                at org.lamsfoundation.lams.integration.security.LoginRequestValve.invoke(LoginRequestValve.java:67)
                at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
                at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307)
                at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385)
                at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748)
                at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678)
                at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871)
                at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
                at java.lang.Thread.run(Thread.java:619)
                ... 71 more
        Show
        jundirl Jun-Dir Liew added a comment - Hi, We updated a server with this code and found this error... 2010-04-13 13:05:03,451 [TP-Processor3:] FATAL org.lamsfoundation.lams.web.util.CustomStrutsExceptionHandler - org.springframework.orm.hibernate3.HibernateSystemException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId; nested exception is org.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId org.hibernate.PropertyAccessException: exception setting property value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false for more info) setter of org.lamsfoundation.lams.tool.forum.persistence.Message.setSequenceId         at org.hibernate.tuple.PojoTuplizer.setPropertyValuesWithOptimizer(PojoTuplizer.java:203)         at org.hibernate.tuple.PojoTuplizer.setPropertyValues(PojoTuplizer.java:173)         at org.hibernate.persister.entity.BasicEntityPersister.setPropertyValues(BasicEntityPersister.java:2900)         at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:113)         at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:510)         at org.hibernate.loader.Loader.doQuery(Loader.java:419)         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:210)         at org.hibernate.loader.Loader.doList(Loader.java:1561)         at org.hibernate.loader.Loader.list(Loader.java:1544)         at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375)         at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)         at org.hibernate.impl.SessionImpl.list(SessionImpl.java:830)         at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)         at org.springframework.orm.hibernate3.HibernateTemplate$31.doInHibernate(HibernateTemplate.java:853)         at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:366)         at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:844)         at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:840)         at org.lamsfoundation.lams.tool.forum.persistence.MessageDao.getRootTopics(MessageDao.java:78)         at org.lamsfoundation.lams.tool.forum.service.ForumService.getRootTopics(ForumService.java:417)         at sun.reflect.GeneratedMethodAccessor1107.invoke(Unknown Source)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)         at java.lang.reflect.Method.invoke(Method.java:597)         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287)         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:165)         at $Proxy53.getRootTopics(Unknown Source)         at org.lamsfoundation.lams.tool.forum.web.actions.LearningAction.viewForum(LearningAction.java:260)         at org.lamsfoundation.lams.tool.forum.web.actions.LearningAction.execute(LearningAction.java:98)         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)         at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)         at org.lamsfoundation.lams.web.filter.LocaleFilter.doFilterInternal(LocaleFilter.java:142)         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)         at org.lamsfoundation.lams.web.session.SystemSessionFilter.doFilter(SystemSessionFilter.java:71)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) ... Caused by: net.sf.cglib.beans.BulkBeanException         at org.lamsfoundation.lams.tool.forum.persistence.Message$$BulkBeanByCGLIB$$968686c1.setPropertyValues(<generated>)         at org.hibernate.tuple.PojoTuplizer.setPropertyValuesWithOptimizer(PojoTuplizer.java:200)         ... 69 more Caused by: java.lang.NullPointerException 2010-04-13 13:05:03,453 [TP-Processor3:] ERROR org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter - Unexpected exception on closing Hibernate Session org.hibernate.HibernateException: Don't dereference a collection with cascade="all-delete-orphan": org.lamsfoundation.lams.tool.forum.persistence.Message.attachments         at org.hibernate.engine.Collections.processDereferencedCollection(Collections.java:70)         at org.hibernate.engine.Collections.processUnreachableCollection(Collections.java:38)         at org.hibernate.event.def.AbstractFlushingEventListener.flushCollections(AbstractFlushingEventListener.java:211)         at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:71)         at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:26)         at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:716)         at org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter.closeSession(CustomizedOpenSessionInViewFilter.java:77)         at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:184)         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)         at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)         at org.lamsfoundation.lams.integration.security.SingleSignOn.invoke(SingleSignOn.java:121)         at org.lamsfoundation.lams.integration.security.LoginRequestValve.invoke(LoginRequestValve.java:67)         at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307)         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385)         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748)         at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678)         at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871)         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)         at java.lang.Thread.run(Thread.java:619)         ... 71 more
        Hide
        dronych Andrey Balan added a comment -
        fixed

        so the problem occurred due to old forums containing NULL sequence_id
        Show
        dronych Andrey Balan added a comment - fixed so the problem occurred due to old forums containing NULL sequence_id
        Hide
        ernieg Ernie Ghiglione added a comment -
        > label.authoring.basic.do.you.want.to.delete

        Label added to i18n now
        Show
        ernieg Ernie Ghiglione added a comment - > label.authoring.basic.do.you.want.to.delete Label added to i18n now
        Hide
        ernieg Ernie Ghiglione added a comment -
        Tested and closed for both 2.3.5 and 2.4
        Show
        ernieg Ernie Ghiglione added a comment - Tested and closed for both 2.3.5 and 2.4
        Hide
        ernieg Ernie Ghiglione added a comment -
        reclosing shorlty
        Show
        ernieg Ernie Ghiglione added a comment - reclosing shorlty

          People

          • Assignee:
            dronych Andrey Balan
            Reporter:
            ernieg Ernie Ghiglione
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development