@Override public boolean authenticate(String userName, String password) { // Your authentication code here... // Only reach this when authenticated... if (isTemporary()) { bind(); } }
Monday, November 5, 2012
Login twice in Wicket
Since the last time I upgraded my Wicket application, I noticed I had to login twice to be authenticated in the application. After careful research using the number one research tool (Google), I found the cause of this problem.
The problem is that my login page is stateless. Wicket will create a temporary dummy session for stateless pages, which will not be saved internally in the session store.
The solution is to let the session stick after authentication by calling bind in the session:
Labels:
apache wicket,
java,
software development,
web development
Saturday, November 3, 2012
Reload JQuery when DOM is changed by Wicket/AJAX
I'm using many jQuery plugins in my Wicket application. When Wicket AjaxBehaviors change the DOM of the page, the initial changes made by the jQuery plugins are often lost. To solve this, we have to initiate the jQuery plugins again when the AjaxBehavior executes. We can do that by appending the plugin initialization JavaScript code like below:
aTextField.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { target.add(aContainerThatIsRefreshed); target.appendJavaScript("$('.jQueryPluginClass').initiatePlugin();"); } });Change the ".jQueryPluginClass" CSS class, and ".initiatePlugin()" plugin call for your specific project.
Labels:
ajax,
apache wicket,
jquery,
software development,
web,
web development,
wicket
Subscribe to:
Posts (Atom)