[Portfolio] Null pointer errors

Sander Steeman sander at learning4u.nl
Thu Mar 26 03:33:42 PDT 2009


I have added a comment to
SAK-11468<http://jira.sakaiproject.org/jira/browse/SAK-11468>.

We have several reports per day for this error. Most importantly, some users
seem unaware of the stack trace and continue filling out the bug report form
with their original comments meant for the form. Can the OSP Jira Team
please review and consider raising the priority?

Thanks,

Sander Steeman
product manager
Learning4u (Portfolio4u b.v.)
Amsterdam
The Netherlands

On Wed, Mar 25, 2009 at 4:36 PM, Maurer, Christopher Wayne <
chmaurer at iupui.edu> wrote:

>  I think this bug is what you’re talking about (or pretty close, at
> least):
> http://jira.sakaiproject.org/jira/browse/SAK-11468
>
> Might be useful if you added your errors to it, that way we’d have some
> current references.
> Dealing with the “Back” button is tricky business, especially when it comes
> to these form helpers.
> If this is turning into a big headache, feel free to bump up the priority
> on the issue (or if permissions don’t allow it, make the suggestion, and
> someone else will).
>
> Chris
>
>
> On 3/25/09 5:48 AM, "Sander Steeman" <sander at portfolio4u.nl> wrote:
>
> Dear all,
>
> We have been able to reproduce the stack trace below in our own production
> environment (Sakai 2.5.2) and on nightly build (Maintenance Branch). Here is
> the scenario:
>
> - In Matrices/Wizard click on a link to fill out a form
> (reflection/feedback/evaluation)
> - Start filling out the form
> - Click the browser's "Back" button (presumably because the user wants to
> check something on the previous page -i.e. matrix cell/wizard page)
> - Click again on the link to fill out the form > Stack trace :
>
> caused by: java.lang.NumberFormatException: null
>     at java.lang.Integer.parseInt(Integer.java:415)
>     at java.lang.Integer.parseInt(Integer.java:497)
>     at
> org.theospi.portfolio.matrix.control.ReviewHelperController.handleRequest(ReviewHelperController.java:130)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.servlet.ViewControllerImpl.handle(ViewControllerImpl.java:78)
>     at
> org.springframework.web.servlet.mvc.AbstractCommandController.handleRequestInternal
> <http://web.servlet.mvc.AbstractCommandController.handleRequestInternal>
> (AbstractCommandController.java:84)
>     at org.springframework.web.servlet.mvc.AbstractController.handleRequest
> <http://web.servlet.mvc.AbstractController.handleRequest>
> (AbstractController.java:153)
>     at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle <
> http://web.servlet.mvc.SimpleControllerHandlerAdapter.handle>
> (SimpleControllerHandlerAdapter.java:48)
>
> I couldn't find a JIRA ticket for it. Is it there? Should I file one?
>
> Regards,
>
> Sander Steeman
>
> product manager
> Learning4u (Portfolio4u b.v.)
> Science Park 400
> 1098 XH Amsterdam
> The Netherlands
>
>
> On Wed, Dec 10, 2008 at 8:28 PM, Noah Botimer <botimer at umich.edu> wrote:
>
>
> Hi Marc,
>
> There are a couple of exceptions that we have been seeing occasionally but
> haven't been able to track down yet.  This particular one doesn't look
> familiar, but here are some of the hotspots we're seeing (with a few lines
> of stack trace for each).
>
> Initial inspection points at session/helper stuff for each of these, but
> reproduction has proven elusive.  We'll be looking into these in more detail
> as time permits.  There are likely to be some JIRA tickets to track once we
> know more.
>
> Thanks,
> -Noah
>
>
> request-path:
> /portal/tool/6a9c3957-548e-4dd2-00c8-d3d6c6b8ea11/osp.wizard.page.contents.helper/sakai.metaobj.form.helper/formEditHelper
> caused by: java.lang.NullPointerException
>     at
> org.sakaiproject.metaobj.shared.control.EditXmlElementController.fillBackingObject(EditXmlElementController.java:114)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.servlet.FormControllerImpl.formBackingObject(FormControllerImpl.java:159)
>     at
> org.springframework.web.servlet.mvc.AbstractFormController.getErrorsForNewForm
> <http://web.servlet.mvc.AbstractFormController.getErrorsForNewForm>
> (AbstractFormController.java:343)
>     at
> org.springframework.web.servlet.mvc.AbstractFormController.showNewForm <
> http://web.servlet.mvc.AbstractFormController.showNewForm>
> (AbstractFormController.java:323)
>
> request-path:
> /portal/tool/ffdbaa61-8404-458b-be4e-784eeecf36d1/osp.wizard.page.contents.helper/sakai.metaobj.form.helper/formEditHelper
> caused by: java.lang.NullPointerException
>     at
> org.sakaiproject.metaobj.shared.model.ElementBean.getType(ElementBean.java:354)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.MapWrapper.setPropertyValue(MapWrapper.java:116)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.MapWrapper.setPropertyValue(MapWrapper.java:136)
>     at
> org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:78)
>     at
> org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:532)
>     at
> org.springframework.validation.DataBinder.doBind(DataBinder.java:434)
>
> request-path:
> /portal/tool/ffdbaa61-8404-458b-be4e-784eeecf36d1/osp.wizard.page.contents.helper/sakai.metaobj.form.helper/formCreateHelper.osp
> caused by: java.lang.NullPointerException
>     at
> org.sakaiproject.metaobj.shared.mgt.home.StructuredArtifactDefinition.<init>(StructuredArtifactDefinition.java:101)
>     at
> org.sakaiproject.metaobj.shared.mgt.factories.DbXmlHomeFactoryImpl.createHome(DbXmlHomeFactoryImpl.java:82)
>     at
> org.sakaiproject.metaobj.shared.mgt.factories.DbXmlHomeFactoryImpl.getHome(DbXmlHomeFactoryImpl.java:58)
>     at
> org.sakaiproject.metaobj.shared.mgt.factories.DbXmlHomeFactoryImpl.handlesType(DbXmlHomeFactoryImpl.java:46)
>     at
> org.sakaiproject.metaobj.shared.mgt.HomeFactoryImpl.getHome(HomeFactoryImpl.java:64)
>     at
> org.sakaiproject.metaobj.shared.control.XmlControllerBase.getSchema(XmlControllerBase.java:219)
>
> request-path:
> /portal/tool/49a87eaa-3e88-4803-bc6b-6da5a1b12321/osp.review.processor.helper/reviewHelper.osp
> caused by: java.lang.NullPointerException
>     at
> org.theospi.portfolio.matrix.control.ReviewHelperController.handleRequest(ReviewHelperController.java:145)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.servlet.ViewControllerImpl.handle(ViewControllerImpl.java:78)
>     at
> org.springframework.web.servlet.mvc.AbstractCommandController.handleRequestInternal
> <http://web.servlet.mvc.AbstractCommandController.handleRequestInternal>
> (AbstractCommandController.java:84)
>     at org.springframework.web.servlet.mvc.AbstractController.handleRequest
> <http://web.servlet.mvc.AbstractController.handleRequest>
> (AbstractController.java:153)
>     at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle <
> http://web.servlet.mvc.SimpleControllerHandlerAdapter.handle>
> (SimpleControllerHandlerAdapter.java:48)
>
> [somewhere in the review helper process]
> caused by: java.lang.NumberFormatException: null
>     at java.lang.Integer.parseInt(Integer.java:415)
>     at java.lang.Integer.parseInt(Integer.java:497)
>     at
> org.theospi.portfolio.matrix.control.ReviewHelperController.handleRequest(ReviewHelperController.java:130)
>     at
> org.sakaiproject.metaobj.utils.mvc.impl.servlet.ViewControllerImpl.handle(ViewControllerImpl.java:78)
>     at
> org.springframework.web.servlet.mvc.AbstractCommandController.handleRequestInternal
> <http://web.servlet.mvc.AbstractCommandController.handleRequestInternal>
> (AbstractCommandController.java:84)
>     at org.springframework.web.servlet.mvc.AbstractController.handleRequest
> <http://web.servlet.mvc.AbstractController.handleRequest>
> (AbstractController.java:153)
>     at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle <
> http://web.servlet.mvc.SimpleControllerHandlerAdapter.handle>
> (SimpleControllerHandlerAdapter.java:48)
>
> On Dec 10, 2008, at 2:02 PM, Marc Zaldivar wrote:
>
>       All,
>
>  We received a bunch of errors last night that were essentially null
> pointer errors.  It looks like a majority of them (though not all) came from
> users using the Matrix and Portfolio tools from their My Workspace area.
>  I’m copying a typical error below.  This one points at the “viewmatrix.osp”
> tool, but the most frequent errors came from the
> “sakai.metaobj.form.helper/formEditHelper” or the “.../formCreateHelper”
>  tools.  We can’t seem to duplicate the issue on our test machines.  It
> seems to affect Mac users, Vista users, and XP users, and we got reports
> from users using Firefox 3, IE7, Chrome, and Safari (even though we don’t
> support the last two browsers).
>
>  My questions:
>
>
>    1. Has there been a known issue with the Matrix/Portfolio tool use from
>    the My Workspace (filling out forms in a matrix, viewing a matrix, creating
>    a portfolio, viewing a portfolio)?
>    2. Have any of you seen these regular null pointer errors originating
>    from OSP forms? I didn’t see anything in the Sakai Jira referencing these.
>    3. Does anyone see anything in the report below indicating what the
>    issue is?
>    4.
>
>
>  Thanks!
>
>  Marc Zaldivar
>  ====================================
>  usage-session: 051e9554-06bc-426d-b5b1-ef2e2f420211
>  stack-trace-digest: 30739E2B5592E037F0B64B56330FFE8610B9E8D2
>  sakai-version: 2.5.0
>  service-version: 2.5
>  app-server: ketchup
>  user-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.4)
> Gecko/2008102920 Firefox/3.0.4
>  browser-id: Win-Mozilla
>  IP: 127.0.0.1
>  request-path:
> /xsl-portal/tool/909437e5-8cde-44a3-8c5f-2c1389421dcf/viewMatrix.osp
>  time: Dec 10, 2008 05:56:55
>
>
>  stack trace:
>
>  org.sakaiproject.portal.api.PortalHandlerException:
> org.sakaiproject.tool.api.ToolException: Request processing failed; nested
> exception is java.lang.NullPointerException
>      at
> org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:892)
>  caused by: org.sakaiproject.tool.api.ToolException: Request processing
> failed; nested exception is java.lang.NullPointerException
>      at
> org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1344)
>  caused by: org.springframework.web.util.NestedServletException <
> http://web.util.NestedServletException> : Request processing failed;
> nested exception is java.lang.NullPointerException
>      at org.springframework.web.servlet.FrameworkServlet.doGet <
> http://web.servlet.FrameworkServlet.doGet> (FrameworkServlet.java:430)
>  caused by: java.lang.NullPointerException
>      at
> org.theospi.portfolio.matrix.control.ViewMatrixController.referenceData(ViewMatrixController.java:219)
>      at
> org.sakaiproject.metaobj.utils.mvc.impl.servlet.FormControllerImpl.referenceData(FormControllerImpl.java:115)
>      at org.springframework.web.servlet.mvc.AbstractFormController.showForm
> <http://web.servlet.mvc.AbstractFormController.showForm>
> (AbstractFormController.java:559)
>      at org.springframework.web.servlet.mvc.SimpleFormController.showForm <
> http://web.servlet.mvc.SimpleFormController.showForm>
> (SimpleFormController.java:198)
>      at org.springframework.web.servlet.mvc.SimpleFormController.showForm <
> http://web.servlet.mvc.SimpleFormController.showForm>
> (SimpleFormController.java:175)
>      at
> org.springframework.web.servlet.mvc.AbstractFormController.showNewForm <
> http://web.servlet.mvc.AbstractFormController.showNewForm>
> (AbstractFormController.java:323)
>      at
> org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal
> <http://web.servlet.mvc.AbstractFormController.handleRequestInternal>
> (AbstractFormController.java:263)
>      at
> org.springframework.web.servlet.mvc.AbstractController.handleRequest <
> http://web.servlet.mvc.AbstractController.handleRequest>
> (AbstractController.java:153)
>      at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle <
> http://web.servlet.mvc.SimpleControllerHandlerAdapter.handle>
> (SimpleControllerHandlerAdapter.java:48)
>      at org.springframework.web.servlet.DispatcherServlet.doDispatch <
> http://web.servlet.DispatcherServlet.doDispatch>
> (DispatcherServlet.java:857)
>      at org.springframework.web.servlet.DispatcherServlet.doService <
> http://web.servlet.DispatcherServlet.doService>
> (DispatcherServlet.java:792)
>      at org.springframework.web.servlet.FrameworkServlet.processRequest <
> http://web.servlet.FrameworkServlet.processRequest>
> (FrameworkServlet.java:475)
>      at org.springframework.web.servlet.FrameworkServlet.doGet <
> http://web.servlet.FrameworkServlet.doGet> (FrameworkServlet.java:430)
>
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>      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:403)
>      at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>      at
> org.sakaiproject.spring.util.SpringTool.dispatch(SpringTool.java:231)
>      at org.sakaiproject.spring.util.SpringTool.doGet(SpringTool.java:294)
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>      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:555)
>      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: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:1344)
>      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.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:892)
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>      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
> com.rsmart.sakai.kernel.request.BrandRequestFilter.doFilter(BrandRequestFilter.java:79)
>      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)
>
>
>  Tool Placement:
>  No Placement
>
>
>  Request:
>  :    AuthType:null
>  :    CharEncoding:UTF-8
>  :    ContentLength:-1
>  :    ContentType:null
>  :    ContextPath:/xsl-portal
>  :    LocalAddress:127.0.0.1
>  :    LocalName:localhost
>  :    LocalPort:8080
>  :    Method:GET
>  :    PathInfo:/tool/909437e5-8cde-44a3-8c5f-2c1389421dcf/viewMatrix.osp
>  :    Protocol:HTTP/1.1
>  :    QueryString:page_id=30FA0EA54C504429C834B7C3AD2A8A34
>  :    RemoteAddress:127.0.0.1
>  :    RemoteHost:127.0.0.1
>  :    RemotePort:59636
>  :    Requested URL:
> https://scholar.vt.edu/xsl-portal/tool/909437e5-8cde-44a3-8c5f-2c1389421dcf/viewMatrix.osp
>  :    Scheme:https
>  :    ServerName:scholar.vt.edu <http://scholar.vt.edu>
>  :    Headers:
>  :        Header:host:localhost:8080
>  :        Header:user-agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
> rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4
>  :
>        Header:accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
>  :        Header:accept-language:en-us,en;q=0.5
>  :        Header:accept-encoding:gzip,deflate
>  :        Header:accept-charset:ISO-8859-1,utf-8;q=0.7,*;q=0.7
>  :        Header:referer:
> https://scholar.vt.edu/xsl-portal/tool/909437e5-8cde-44a3-8c5f-2c1389421dcf/osp.wizard.page.contents.helper/sakai.metaobj.form.helper/formEditHelper
>  :        Header:cookie:---censored---
>  :        Header:x-forwarded-for:204.119.253.226
>  :        Header:x-forwarded-host:scholar.vt.edu <http://scholar.vt.edu>
>  :        Header:x-forwarded-server:ketchup
>  :        Header:connection:Keep-Alive
>  :    Parameters:
>  :        Parameter:page_id:0:30FA0EA54C504429C834B7C3AD2A8A34
>  :    Attributes:
>  :
>        Attribute:tool.url.manager:org.sakaiproject.portal.util.ToolURLManagerImpl at 3f08a36c
>  :
>        Attribute:sakai.session:org.sakaiproject.tool.impl.SessionComponent$MySession at 26242c7e
>  :        Attribute:sakai.html.head.css.base:<link
> href="/library/skin/tool_base.css" type="text/css" rel="stylesheet"
> media="all" />
>
>  :
>        Attribute:sakai.character.encoding.done:sakai.character.encoding.done
>  :        Attribute:sakai.html.head.js:<script type="text/javascript"
> language="JavaScript" src="/library/js/headscripts.js"></script>
>
>  :        Attribute:sakai.html.head:<link
> href="/library/skin/tool_base.css" type="text/css" rel="stylesheet"
> media="all" />
>  <link href="/library/skin/Virginia-Tech/tool.css" type="text/css"
> rel="stylesheet" media="all" />
>  <script type="text/javascript" language="JavaScript"
> src="/library/js/headscripts.js"></script>
>
>  :        Attribute:sakai.request.native.url:sakai.request.native.url
>  :
>        Attribute:sakai.html.body.onload:setMainFrameHeight('Main909437e5x8cdex44a3x8c5fx2c1389421dcf');setFocus(focus_path);
>  :        Attribute:sakai.filtered:sakai.filtered
>  :        Attribute:sakai.html.head.css.skin:<link
> href="/library/skin/Virginia-Tech/tool.css" type="text/css" rel="stylesheet"
> media="all" />
>
>  :        Attribute:sakai.html.head.css:<link
> href="/library/skin/tool_base.css" type="text/css" rel="stylesheet"
> media="all" />
>  <link href="/library/skin/Virginia-Tech/tool.css" type="text/css"
> rel="stylesheet" media="all" />
>
>  Session:
>  :    Created:1228892326942
>  :    LastAccess:1228906615479
>  :    MaxInactive:3600
>  :    Attributes:
>  :        Attribute:portalskin:defaultskin
>
> ------------------------------
>
> This automatic notification message was sent by Sakai Collab (
> https://collab.sakaiproject.org//portal) from the Project: Portfolio site.
> You can modify how you receive notifications at My Workspace > Preferences.
>
>
>
>
> ------------------------------
>
> This automatic notification message was sent by Sakai Collab (
> https://collab.sakaiproject.org//portal) from the Project: Portfolio site.
> You can modify how you receive notifications at My Workspace > Preferences.
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/portfolio/attachments/20090326/186146ba/attachment-0001.html 


More information about the portfolio mailing list