Hi,
this is my first question, so i hope I get everything right.

I am trying to catch the event of the user closing the browser window in
wicket.

I followed this example:

http://stackoverflow.com/questions/16527463/call-java-component-from-javascript-and-retreive-value

and I managed to get the example working so the message is displayed, but I
have no idea how to get the event triggered by the javascript function in
wicket. I need this because when the user closes the browser window I want
to update some data in my database.
Here is what I have tryed:


     RequiredTextField<String> myTextField = new
RequiredTextField<String>("myTextField");
     myTextField.setOutputMarkupPlaceholderTag(true);
     myTextField.add(new PageExitWarningBehavior(){
            @Override
            public void onEvent(Component component, IEvent<?> event)
            {
                //this isn't ever called
                MySession.get().releaseBlockedDataFromDatabase();
                }
        });

    public class PageExitWarningBehavior extends Behavior  {
        @Override
        public void renderHead(Component component, IHeaderResponse
response) {
            super.renderHead(component, response);
                    response.render(new
OnDomReadyHeaderItem("window.onbeforeunload = function (e) {"
                  + "var message = 'Your confirmation message goes here.',"
                      + "e = e || window.event;" + "if (e) {"
                  + "e.returnValue = message;" + "}" + "return message;" +
"};"));
        }
    }

What am I missing? Thank you very much in advance :-)

Reply via email to