You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Esko Suomi (JIRA)" <ji...@apache.org> on 2009/09/22 08:04:16 UTC

[jira] Updated: (WICKET-2479) NPE when clearing DateTimeField

     [ https://issues.apache.org/jira/browse/WICKET-2479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Esko Suomi updated WICKET-2479:
-------------------------------

    Description: 
This bug is apparently caused by regression of some sort since this was fixed for 1.4.0 (see links below). Simply, the NPE still occurs when clearing the DateTimeField. In our environment we're using CompoundPropertyModel as model object for the related form. When I get back to work (it's saturday so that'd be a few days) I can paste the stacktrace but I doubt that's needed, this should be easy to fix based on information in the previous issues.

Since fixing of this bug has obviously failed before, I've set the priority of this one to Blocker to enforce its quick resolution.

Related issues:
https://issues.apache.org/jira/browse/WICKET-2083
https://issues.apache.org/jira/browse/WICKET-2237


EDIT: Here's the stacktrace:


WicketMessage: Error calling method: public void org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(java.util.Date) on object: [MarkupContainer [Component id = endDate]]

Root cause:

java.lang.NullPointerException
     at org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(DateTimeField.java:239)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at java.lang.reflect.Method.invoke(Method.java:597)
     at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(PropertyResolver.java:1129)
     at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:588)
     at org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:136)
     at org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyModel.java:169)
     at org.apache.wicket.Component.setDefaultModelObject(Component.java:3052)
     at org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)
     at org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:225)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:514)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:465)
     at org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051)
     at org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019)
     at org.apache.wicket.markup.html.form.Form.process(Form.java:984)
     at org.apache.wicket.markup.html.form.Form.process(Form.java:911)
     at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:876)
     at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:135)
     at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)
     at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:299)
     at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:113)
     at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
     at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
     at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
     at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
     at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
     at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:456)
     at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:289)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at org.jsecurity.web.servlet.JSecurityFilter.doFilterInternal(JSecurityFilter.java:382)
     at org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
     at java.lang.Thread.run(Thread.java:619)

Complete stack:

org.apache.wicket.WicketRuntimeException: Error calling method: public void org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(java.util.Date) on object: [MarkupContainer [Component id = endDate]]
     at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(PropertyResolver.java:1133)
     at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:588)
     at org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:136)
     at org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyModel.java:169)
     at org.apache.wicket.Component.setDefaultModelObject(Component.java:3052)
     at org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)
     at org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:225)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:514)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
     at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:465)
     at org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051)
     at org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019)
     at org.apache.wicket.markup.html.form.Form.process(Form.java:984)
     at org.apache.wicket.markup.html.form.Form.process(Form.java:911)
     at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:876)
     at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:135)
     at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)
     at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:299)
     at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:113)
     at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
     at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
     at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
     at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
     at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
     at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:456)

  was:
This bug is apparently caused by regression of some sort since this was fixed for 1.4.0 (see links below). Simply, the NPE still occurs when clearing the DateTimeField. In our environment we're using CompoundPropertyModel as model object for the related form. When I get back to work (it's saturday so that'd be a few days) I can paste the stacktrace but I doubt that's needed, this should be easy to fix based on information in the previous issues.

Since fixing of this bug has obviously failed before, I've set the priority of this one to Blocker to enforce its quick resolution.

Related issues:
https://issues.apache.org/jira/browse/WICKET-2083
https://issues.apache.org/jira/browse/WICKET-2237


Added example stacktrace

> NPE when clearing DateTimeField
> -------------------------------
>
>                 Key: WICKET-2479
>                 URL: https://issues.apache.org/jira/browse/WICKET-2479
>             Project: Wicket
>          Issue Type: Bug
>    Affects Versions: 1.4.1
>            Reporter: Esko Suomi
>            Priority: Blocker
>
> This bug is apparently caused by regression of some sort since this was fixed for 1.4.0 (see links below). Simply, the NPE still occurs when clearing the DateTimeField. In our environment we're using CompoundPropertyModel as model object for the related form. When I get back to work (it's saturday so that'd be a few days) I can paste the stacktrace but I doubt that's needed, this should be easy to fix based on information in the previous issues.
> Since fixing of this bug has obviously failed before, I've set the priority of this one to Blocker to enforce its quick resolution.
> Related issues:
> https://issues.apache.org/jira/browse/WICKET-2083
> https://issues.apache.org/jira/browse/WICKET-2237
> EDIT: Here's the stacktrace:
> WicketMessage: Error calling method: public void org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(java.util.Date) on object: [MarkupContainer [Component id = endDate]]
> Root cause:
> java.lang.NullPointerException
>      at org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(DateTimeField.java:239)
>      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>      at java.lang.reflect.Method.invoke(Method.java:597)
>      at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(PropertyResolver.java:1129)
>      at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:588)
>      at org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:136)
>      at org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyModel.java:169)
>      at org.apache.wicket.Component.setDefaultModelObject(Component.java:3052)
>      at org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)
>      at org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:225)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:514)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:465)
>      at org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051)
>      at org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019)
>      at org.apache.wicket.markup.html.form.Form.process(Form.java:984)
>      at org.apache.wicket.markup.html.form.Form.process(Form.java:911)
>      at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:876)
>      at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:135)
>      at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)
>      at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:299)
>      at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:113)
>      at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
>      at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
>      at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
>      at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
>      at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
>      at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:456)
>      at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:289)
>      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>      at org.jsecurity.web.servlet.JSecurityFilter.doFilterInternal(JSecurityFilter.java:382)
>      at org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180)
>      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>      at java.lang.Thread.run(Thread.java:619)
> Complete stack:
> org.apache.wicket.WicketRuntimeException: Error calling method: public void org.apache.wicket.extensions.yui.calendar.DateTimeField.setDate(java.util.Date) on object: [MarkupContainer [Component id = endDate]]
>      at org.apache.wicket.util.lang.PropertyResolver$MethodGetAndSet.setValue(PropertyResolver.java:1133)
>      at org.apache.wicket.util.lang.PropertyResolver$ObjectAndGetSetter.setValue(PropertyResolver.java:588)
>      at org.apache.wicket.util.lang.PropertyResolver.setValue(PropertyResolver.java:136)
>      at org.apache.wicket.model.AbstractPropertyModel.setObject(AbstractPropertyModel.java:169)
>      at org.apache.wicket.Component.setDefaultModelObject(Component.java:3052)
>      at org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)
>      at org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:225)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:514)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)
>      at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent.java:465)
>      at org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051)
>      at org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019)
>      at org.apache.wicket.markup.html.form.Form.process(Form.java:984)
>      at org.apache.wicket.markup.html.form.Form.process(Form.java:911)
>      at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:876)
>      at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:135)
>      at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)
>      at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:299)
>      at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:113)
>      at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
>      at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
>      at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
>      at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)
>      at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
>      at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:456)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.