Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-13376

Blogger erases entire post when large amount of text is entered into a comment.

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: CLOSED
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.5.0
    • Fix Version/s: 2.4.x, 2.5.2, 2.6.0
    • Labels:
      None
    • Environment:

      Description

      When pasting aproximately four paragraphs of text into a blog comment we generate exceptions that also delete the post that the comment was commenting on. Below is the exception that is generated on the Georgia Tech QA server. In the initial comment to this bug I'll show the text I'm pasting in.

      Recovery
      To recover from this error without sending in a bug report, please do the following:

      Press the Logout button above to logout.
      Close your browser to assure a clean start.
      Re-open your browser and start again.

      Technical Details
      This information will automatically be included in your bug report.

      org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: Exception in JSP: /sakai-blogger-tool/ViewPost.jsp:53

      50: <blogger:ouputPost post="#

      {postViewerController.post}"></blogger:ouputPost>
      51: <br/>
      52: <sakai:button_bar>
      53: <sakai:button_bar_item action="#{postViewerController.doEditPost}"rendered="#{postViewerController.activateEditCommand}" value="#{msgs.edit}"/>
      54: <sakai:button_bar_item action="#{postViewerController.doConfirmDeletePost}" rendered="#{postViewerController.activateDeleteCommand}" value="#{msgs.delete}"/>
      55: <sakai:button_bar_item action="#{postViewerController.doAddComment}"rendered="#{postViewerController.activetAddCommentCommand}" value="#{msgs.addComment}"/>
      56: </sakai:button_bar>


      Stacktrace:
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:63)
      caused by: org.sakaiproject.tool.api.ToolException: Exception in JSP: /sakai-blogger-tool/ViewPost.jsp:53

      50: <blogger:ouputPost post="#{postViewerController.post}

      "></blogger:ouputPost>
      51: <br/>
      52: <sakai:button_bar>
      53: <sakai:button_bar_item action="#

      {postViewerController.doEditPost}"rendered="#{postViewerController.activateEditCommand}" value="#{msgs.edit}"/>
      54: <sakai:button_bar_item action="#{postViewerController.doConfirmDeletePost}" rendered="#{postViewerController.activateDeleteCommand}" value="#{msgs.delete}"/>
      55: <sakai:button_bar_item action="#{postViewerController.doAddComment}"rendered="#{postViewerController.activetAddCommentCommand}" value="#{msgs.addComment}"/>
      56: </sakai:button_bar>


      Stacktrace:
      at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1343)
      caused by: org.apache.jasper.JasperException: Exception in JSP: /sakai-blogger-tool/ViewPost.jsp:53

      50: <blogger:ouputPost post="#{postViewerController.post}"></blogger:ouputPost>
      51: <br/>
      52: <sakai:button_bar>
      53: <sakai:button_bar_item action="#{postViewerController.doEditPost}

      "rendered="#

      {postViewerController.activateEditCommand}

      " value="#

      {msgs.edit}

      "/>
      54: <sakai:button_bar_item action="#

      {postViewerController.doConfirmDeletePost}

      " rendered="#

      {postViewerController.activateDeleteCommand}

      " value="#

      {msgs.delete}

      "/>
      55: <sakai:button_bar_item action="#

      {postViewerController.doAddComment}

      "rendered="#

      {postViewerController.activetAddCommentCommand}

      " value="#

      {msgs.addComment}

      "/>
      56: </sakai:button_bar>

      Stacktrace:
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:371)
      caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.el.EvaluationException: Error getting property 'activateEditCommand' from bean of type uk.ac.lancs.e_science.sakai.tools.blogger.PostViewerController: java.lang.NullPointerException
      at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
      caused by: javax.faces.el.EvaluationException: javax.faces.el.EvaluationException: Error getting property 'activateEditCommand' from bean of type uk.ac.lancs.e_science.sakai.tools.blogger.PostViewerController: java.lang.NullPointerException
      at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
      caused by: javax.faces.el.EvaluationException: Error getting property 'activateEditCommand' from bean of type uk.ac.lancs.e_science.sakai.tools.blogger.PostViewerController: java.lang.NullPointerException
      at com.sun.faces.el.impl.ArraySuffix.evaluate(ArraySuffix.java:167)
      caused by: java.lang.NullPointerException
      at uk.ac.lancs.e_science.sakai.tools.blogger.PostViewerController.getActivateEditCommand(PostViewerController.java:110)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at com.sun.faces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:79)
      at com.sun.faces.el.impl.ArraySuffix.evaluate(ArraySuffix.java:167)
      at com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:151)
      at com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:243)
      at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:173)
      at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
      at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:315)
      at javax.faces.webapp.UIComponentTag.shouldBeSuppressed(UIComponentTag.java:1281)
      at javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:475)
      at com.sun.faces.taglib.html_basic.CommandButtonTag.doStartTag(CommandButtonTag.java:469)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_sakai_005fbutton_005fbar_005fitem_005f0(ViewPost_jsp.java:374)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_sakai_005fbutton_005fbar_005f0(ViewPost_jsp.java:342)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_sakai_005fview_005fcontent_005f0(ViewPost_jsp.java:254)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_h_005fform_005f0(ViewPost_jsp.java:214)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_sakai_005fview_005fcontainer_005f0(ViewPost_jsp.java:188)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspx_meth_f_005fview_005f0(ViewPost_jsp.java:144)
      at org.apache.jsp.sakai_002dblogger_002dtool.ViewPost_jsp._jspService(ViewPost_jsp.java:111)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at uk.ac.lancs.e_science.fileUpload.UploadFilter.doFilter(UploadFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
      at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
      at org.sakaiproject.jsf.app.SakaiViewHandler.renderView(SakaiViewHandler.java:137)
      at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
      at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:555)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at uk.ac.lancs.e_science.fileUpload.UploadFilter.doFilter(UploadFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at org.sakaiproject.jsf.util.HelperAwareJsfTool.dispatch(HelperAwareJsfTool.java:170)
      at org.sakaiproject.jsf.util.JsfTool.doPost(JsfTool.java:256)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:691)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:459)
      at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1343)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:163)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:86)
      at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:63)
      at org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1186)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:592)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
      at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
      at java.lang.Thread.run(Thread.java:595)

      user: 80d39a9a-7934-4f65-986b-d26a910c7f16

      usage-session: 3dc9a6e3-4626-4e45-95df-05660404599d

      time: Apr 15, 2008 14:50:04

        Gliffy Diagrams

          Zeplin

            Attachments

              Activity

                People

                • Assignee:
                  a.fish@lancaster.ac.uk Adrian Fish
                  Reporter:
                  lfernandez@weber.edu Luke Fernandez
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Integration