[ 
https://issues.apache.org/jira/browse/WICKET-2479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12758172#action_12758172
 ] 

Juergen Donnerstag commented on WICKET-2479:
--------------------------------------------

According to 
http://svn.apache.org/viewvc/wicket/releases/wicket-1.4.1/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java?view=annotate
  (which is what was included in the 1.4.1 release)  the line causing the NPE 
is 

239 : ivaynberg 672603          setDefaultModelObject(date);
 
This very same line was in 1.4.0 at the very same position.

This line obviously cannot cause an NPE. If the NPE happens inside 
setDefaultModelObject(date); the stacktrace would include the method.

Are you sure you are using 1.4.1 and not any other older version or maintenance 
release? 

> 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
>
> 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.

Reply via email to