You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Daniel Caldeweyher (JIRA)" <de...@tapestry.apache.org> on 2008/10/23 08:32:44 UTC

[jira] Issue Comment Edited: (TAPESTRY-2714) NPE during DojoAjaxResponseBuilder.beginResponse after async submit after "back" button

    [ https://issues.apache.org/jira/browse/TAPESTRY-2714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12642077#action_12642077 ] 

dcalde edited comment on TAPESTRY-2714 at 10/22/08 11:31 PM:
-------------------------------------------------------------------------

This tapestry user appears to have the same problem:
http://markmail.org/message/wn4cqdd6zbc3325v

But his message never got a reply.

      was (Author: dcalde):
    This tapestry user appears to have the problem:
http://markmail.org/message/wn4cqdd6zbc3325v

But his message never got a reply.
  
> NPE during DojoAjaxResponseBuilder.beginResponse after async submit after "back" button
> ---------------------------------------------------------------------------------------
>
>                 Key: TAPESTRY-2714
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2714
>             Project: Tapestry
>          Issue Type: Bug
>    Affects Versions: 4.1.5, 4.1.6
>            Reporter: Daniel Caldeweyher
>
> Hi,
> we are getting a NPE during form rewind after using the back button back to a page that contains a @PropertySelection with an async onchange  @EventListener. If this event listener is triggered, the _writer inside the DojoAjaxResponseBuilder is null, causing an NPE. It works correctly if the page is accessed normally, ie. not via back button.
> Should beginResponse even be called during rewind?
> Also, if the methods in DojoAjaxResponseBuilder were using getWriter() instead of _writer directly. this could be fixed by replacing 
>     public IMarkupWriter getWriter()
>     {
>         return _writer;
>     }
> with
>     public IMarkupWriter getWriter()
>     {	
>     	if(_writer == null) 
>     	{
>     		return NullWriter.getSharedInstance();
>     	}
>         return _writer;
>     }
> here is the stacktrace:
> Caused by: java.lang.NullPointerException
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.beginResponse(DojoAjaxResponseBuilder.java:696)
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.getWriter(DojoAjaxResponseBuilder.java:665)
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.getComponentWriter(DojoAjaxResponseBuilder.java:653)
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(DojoAjaxResponseBuilder.java:629)
> 	at org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538)
> 	at org.apache.tapestry.components.Any.renderComponent(Any.java:44)
> 	at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(DojoAjaxResponseBuilder.java:635)
> 	at org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java:538)
> 	at org.apache.tapestry.form.FormSupportImpl.rewind(FormSupportImpl.java:624)
> 	at org.apache.tapestry.form.Form.renderComponent(Form.java:196)
> 	at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> 	at org.apache.tapestry.services.impl.DojoAjaxResponseBuilder.render(DojoAjaxResponseBuilder.java:635)
> 	at org.apache.tapestry.form.Form.rewind(Form.java:269)
> 	at org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:469)
> 	... 40 more
> we thought that maybe preventBackButtonFix: false might help, but it was not related.
> Thanks,
> Daniel

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


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org