Hendy Irawan created WICKET-6431:
------------------------------------

             Summary: Making AjaxButton stateless makes it not working
                 Key: WICKET-6431
                 URL: https://issues.apache.org/jira/browse/WICKET-6431
             Project: Wicket
          Issue Type: Bug
          Components: wicket
    Affects Versions: 7.8.0
            Reporter: Hendy Irawan
         Attachments: wicketbug1.jpg

Markup:

{code:xml}
<form wicket:id="navbarForm">
    <button wicket:id="logoutLink0">Keluar</button>
</form>
{code}

Inside a **stateful** Page, This works:

{code:java}
final StatelessForm<Void> navbarForm = new StatelessForm<Void>("navbarForm") {
    @Override
    protected void onSubmit() {
        super.onSubmit();
        log.info("navbarForm onSubmit");
    }
};
navbarForm.add(new AjaxButton("logoutLink0", navbarForm) {
    @Override
    protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
        log.info("Uw");
        super.onSubmit(target, form);
        log.info("Aw");
    }
});
{code}

adding to the AjaxButton makes it not working:

{code:java}
    @Override
    protected boolean getStatelessHint() {
        return true;
    }
{code}

By "not working" it means directly redirects to this page again, no onSubmit 
behavior is called (neither for the form nor the button).

This is the HTTP request that gets sent when (made stateless) button is clicked:

!wicketbug1.jpg|thumbnail!

So to my mind it seems that the sending page is behaving "correctly" (since it 
sends the form), but the receiving page is not reacting correctly, and seems to 
ignore submitted form.

I observed similar behavior with StatelessLink, but I don't want to conflate 
issues. This could very well be my own fault.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to