Wicket job opportunities
Hello! Sorry for bringing this topic, but I'm wondering are there any Software Developer positions that require Wicket knowledge and a remote work is an option? It would be double awesome if such position involves Scala/Clojure/Hadoop. I'll provide my CV on a request. Thank you!
Wicket 6.7, AjaxCallListener.onPrecondition, prevent default behavior
Hello! Could someone confirm that in Wicket 6.7 when a JavaScript expression in AjaxCallListener.onPrecondition() returns false, a default behavior for a corresponding HTML element isn't prevented? For example, I have an AjaxFallbackButton which corresponds to a button type=submit element on a page and even when an expression in AjaxCallListener.onPrecondition() registered for the AjaxFallbackButton returns false, a form with the button is submitted and the page with the form is refreshed. Downgrading to Wicket 6.6 solves this issue without any additional changes. Thank you.
Re[2]: Wicket 6.7, AjaxCallListener.onPrecondition, prevent default behavior
Hello, Martin! Thank you for you response! Great that it's fixed already. Thank you. Sat, 18 May 2013, 12:42 +03:00 from Martin Grigorov mgrigo...@apache.org: Hi, yes. This is fixed in 6.8.0 On May 18, 2013 12:20 PM, Leonid Bogdanov leonid_bogda...@mail.ru wrote: Hello! Could someone confirm that in Wicket 6.7 when a JavaScript expression in AjaxCallListener.onPrecondition() returns false, a default behavior for a corresponding HTML element isn't prevented? For example, I have an AjaxFallbackButton which corresponds to a button type=submit element on a page and even when an expression in AjaxCallListener.onPrecondition() registered for the AjaxFallbackButton returns false, a form with the button is submitted and the page with the form is refreshed. Downgrading to Wicket 6.6 solves this issue without any additional changes. Thank you.
wicket-atmosphere issues
Hello! I'm playing with the wicket-atmosphere module and, while generally it works fine, I stumbled upon a couple of issues: 1) Suppose I have a Page with a method marked with @Subscribe annotation, this subscribtion has a filter attached. Is it possible to get the Page instance inside the filter to, e.g., access Page instance variables when deciding on event filtering? 2) It seems like sometimes empty Atmosphere messages are sent to a page when a filter rejected the specific message. For such events I have the following log record on the server [Atmosphere-AsyncWrite-1] INFO o.a.w.atmosphere.AtmosphereBehavior - onBroadcast: 0|msg| and there is a JS error in a browser after receiveing the event ERROR: Wicket.Ajax.Call.failure: Error while parsing response: Could not find root ajax-response element What is the purpose of sending empty messages to a browser? 3) In my app Apache Shiro framework is integrated via a plugin adapted from fiftyfive-wicket-shiro project. User credentials are checked in an AJAX login form. In order to prevent a session fixation attack there is a call to invalidate old and create new session right before credentials check: getSession().replaceSession(); // inside AjaxFallbackButton.onSubmit() After integration with Atmosphere this code no longer works, an exception in thrown on login attempt: 22:11:41.698 [qtp18908406-24] ERROR o.a.wicket.DefaultExceptionMapper - Unexpected error occurred org.apache.wicket.WicketRuntimeException: Method onRequest of interface org.apache.wicket.behavior.IBehaviorListener targeted at org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1@f78197 on component [AjaxFallbackButton [Component id = submit]] threw an exception at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:268) ~[wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241) ~[wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:247) ~[wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:226) ~[wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:840) ~[wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) ~[wicket-request-6.6.0.jar:6.6.0] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:254) [wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:211) [wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:282) [wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:244) [wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188) [wicket-core-6.6.0.jar:6.6.0] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:267) [wicket-core-6.6.0.jar:6.6.0] at org.atmosphere.util.AtmosphereFilterChain.doFilter(AtmosphereFilterChain.java:155) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.util.AtmosphereFilterChain.invokeFilterChain(AtmosphereFilterChain.java:132) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.handler.ReflectorServletProcessor$FilterChainServletWrapper.service(ReflectorServletProcessor.java:314) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.handler.ReflectorServletProcessor.onRequest(ReflectorServletProcessor.java:172) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.cpr.AsynchronousProcessor.action(AsynchronousProcessor.java:256) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.cpr.AsynchronousProcessor.suspended(AsynchronousProcessor.java:166) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.container.Jetty7CometSupport.service(Jetty7CometSupport.java:96) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.container.JettyAsyncSupportWithWebSocket.service(JettyAsyncSupportWithWebSocket.java:70) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.cpr.AtmosphereFramework.doCometSupport(AtmosphereFramework.java:1307) [atmosphere-runtime-1.0.8.jar:1.0.8] at org.atmosphere.cpr.AtmosphereServlet.doPost(AtmosphereServlet.java:293) [atmosphere-runtime-1.0.8.jar:1.0.8] at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) [javax.servlet-3.0.0.v201112011016.jar:na] Caused by: java.lang.IllegalStateException: null at
Re[2]: Forward request to an external filter
Hello, Martin! Thank you for your response! Actually I already use Scribe lib, but indirectly - through Shiro OAuth plugin. Thank you. Monday, 18 Feb 2013, 10:06 +02:00 from Martin Grigorov mgrigo...@apache.org: Hi, Wicket doesn't provide an API for internal forwards. Use the Servlet API for this. Also check https://github.com/fernandezpablo85/scribe-java for OAuth. It is very simple to use it. On Thu, Feb 14, 2013 at 4:34 PM, Leonid Bogdanov leonid_bogda...@mail.ru wrote: Hello! I'm trying to add OAuth authentication to a Wicket webapp and as a part of this I need to be able to do server-side forward of a request from Wicket to an external filter. So what is the best way to do this in Wicket? Do I need to throw some special exception with an URL to forward to or should do this more traditionally with RequestDispatcher.forward()? Thank you. -- Martin Grigorov jWeekend Training, Consulting, Development http://jWeekend.com http://jweekend.com/
Re[4]: Forward request to an external filter
Hello, Martin! I think such article would be helpful to many others, so if it's not too much trouble, please, write about it. Thank you. Monday, 18 Feb 2013, 10:25 +02:00 from Martin Grigorov mgrigo...@apache.org: Hi Leonid, I have no experience with Apache Shiro. I can blog about how to use Scribe directly in Wicket if this will help you. On Mon, Feb 18, 2013 at 10:18 AM, Leonid Bogdanov leonid_bogda...@mail.ru wrote: Hello, Martin! Thank you for your response! Actually I already use Scribe lib, but indirectly - through Shiro OAuth plugin. Thank you. Monday, 18 Feb 2013, 10:06 +02:00 from Martin Grigorov mgrigo...@apache.org : Hi, Wicket doesn't provide an API for internal forwards. Use the Servlet API for this. Also check https://github.com/fernandezpablo85/scribe-java for OAuth. It is very simple to use it. On Thu, Feb 14, 2013 at 4:34 PM, Leonid Bogdanov leonid_bogda...@mail.ru wrote: Hello! I'm trying to add OAuth authentication to a Wicket webapp and as a part of this I need to be able to do server-side forward of a request from Wicket to an external filter. So what is the best way to do this in Wicket? Do I need to throw some special exception with an URL to forward to or should do this more traditionally with RequestDispatcher.forward()? Thank you. -- Martin Grigorov jWeekend Training, Consulting, Development http://jWeekend.com http://jweekend.com/ -- Martin Grigorov jWeekend Training, Consulting, Development http://jWeekend.com http://jweekend.com/
Re: Forward request to an external filter
Hello! Any comments on this? Thank you. Thursday, 14 Feb 2013, 18:34 +04:00 from Leonid Bogdanov: Hello! I'm trying to add OAuth authentication to a Wicket webapp and as a part of this I need to be able to do server-side forward of a request from Wicket to an external filter. So what is the best way to do this in Wicket? Do I need to throw some special exception with an URL to forward to or should do this more traditionally with RequestDispatcher.forward()? Thank you.
Forward request to an external filter
Hello! I'm trying to add OAuth authentication to a Wicket webapp and as a part of this I need to be able to do server-side forward of a request from Wicket to an external filter. So what is the best way to do this in Wicket? Do I need to throw some special exception with an URL to forward to or should do this more traditionally with RequestDispatcher.forward()? Thank you.