Ticket + a quickstart please! Martin Grigorov Wicket Training and Consulting https://twitter.com/mtgrigorov
On Wed, Jul 9, 2014 at 7:52 PM, Thomas Heigl <[email protected]> wrote: > +1 > > We're also seeing these sporadically and a custom exception would help a > lot. > > Thomas > On Jul 7, 2014 10:12 AM, "Martin Grigorov" <[email protected]> wrote: > > > Please create a ticket! > > With a patch with the custom exception will make its processing even > > faster! > > Thank you! > > > > Martin Grigorov > > Wicket Training and Consulting > > https://twitter.com/mtgrigorov > > > > > > On Mon, Jul 7, 2014 at 11:08 AM, Daniel Stoch <[email protected]> > > wrote: > > > > > I think the simplest solution for now (until we invent a better one) > > > is to define a dedicated exception class for such case (similar to > > > ListenerInvocationNotAllowedException which is raised if user tries > > > click on disabled links). Then we can catch such exception and handle > > > it eg. as described by Martin in my previous post ("How to handle > > > click on disabled links - ListenerInvocationNotAllowedException?"). > > > > > > -- > > > Daniel > > > > > > On Fri, Jul 4, 2014 at 5:38 PM, Ernesto Reinaldo Barreiro > > > <[email protected]> wrote: > > > > maybe what is needed is a "fail silently ajax request" ;-) > > > > > > > > > > > > On Fri, Jul 4, 2014 at 5:36 PM, Ernesto Reinaldo Barreiro < > > > > [email protected]> wrote: > > > > > > > >> Hi, > > > >> > > > >> > > > >> On Fri, Jul 4, 2014 at 4:59 PM, Daniel Stoch < > [email protected]> > > > >> wrote: > > > >> > > > >>> Sorry, but for me all these solutions are hacks :). > > > >>> > > > >> > > > >> Why? As far as they are under control... Isn't software development > > > >> production controlled "hacks"? Wicket itself is a "hack" and so do > are > > > >> other WEB frameworks like GWT. As far as you remain in control I do > > not > > > see > > > >> the problem. All frameworks have limitations... Why not get the best > > of > > > >> them and circumvent those. > > > >> > > > >> > > > >>> I want to use standard components (eg. AjaxLink) to do simple > things. > > > >>> I don't want to think everywhere how to handle such scenarios. It > > > >>> should be handled properly on a framework level. I think there is > > > >>> always possibility that component state on server and DOM tree on > > > >>> client browser are inconsistent (and not necessary because of push > > > >>> requests). Maybe it should be a dedicated exception on such > situation > > > >>> ("Component 'xxx' has been removed from page.") at least or maybe > we > > > >>> can invent a better solution in core? > > > >>> > > > >> > > > >> I do agree that would be optimal. > > > >> > > > >> > > > >> > > > >>> > > > >>> -- > > > >>> Daniel > > > >>> > > > >>> On Fri, Jul 4, 2014 at 4:11 PM, Ernesto Reinaldo Barreiro > > > >>> <[email protected]> wrote: > > > >>> > Maybe you could even just push JSON to client side and generate > > items > > > >>> > content at client side which is going to be way faster > > > >>> > > > > >>> > > > > >>> > On Fri, Jul 4, 2014 at 4:06 PM, Ernesto Reinaldo Barreiro < > > > >>> > [email protected]> wrote: > > > >>> > > > > >>> >> Why don't you try routing all the click to a part of you > > application > > > >>> that > > > >>> >> is always available? E.g. > > > >>> >> > > > >>> >> 1- You have a list of items that are pushed... They are in a > > certain > > > >>> >> container that is "always" there... At client and server side > > > >>> >> 2- The items are pushed but instead of normal AJAX link you use > > > link to > > > >>> >> the parent never changing container passing ID of item. This way > > > click > > > >>> will > > > >>> >> never fail and it is still sort of object oriented... > > > >>> >> > > > >>> >> > > > >>> >> > > > >>> >> On Fri, Jul 4, 2014 at 3:59 PM, Daniel Stoch < > > > [email protected]> > > > >>> >> wrote: > > > >>> >> > > > >>> >>> On Fri, Jul 4, 2014 at 3:14 PM, Martin Grigorov < > > > [email protected] > > > >>> > > > > >>> >>> wrote: > > > >>> >>> > Hi, > > > >>> >>> > > > > >>> >>> > You can use Atmopshere to hide/disable the client side too, > not > > > >>> just the > > > >>> >>> > server side. > > > >>> >>> > > > >>> >>> Of course, I already do that. > > > >>> >>> But user can click the link after state was changed on the > server > > > side > > > >>> >>> but before these changes are pushed to client browser. > > > >>> >>> > > > >>> >>> -- > > > >>> >>> Daniel > > > >>> >>> > > > >>> >>> > > > >>> >>> > > > > >>> >>> > Martin Grigorov > > > >>> >>> > Wicket Training and Consulting > > > >>> >>> > https://twitter.com/mtgrigorov > > > >>> >>> > > > > >>> >>> > > > > >>> >>> > On Fri, Jul 4, 2014 at 1:46 PM, Daniel Stoch < > > > >>> [email protected]> > > > >>> >>> wrote: > > > >>> >>> > > > > >>> >>> >> On Fri, Jul 4, 2014 at 12:33 PM, Sven Meier < > [email protected]> > > > >>> wrote: > > > >>> >>> >> >> So page was rendered in a browser, > > > >>> >>> >> >> on the server component tree was changed > > > >>> >>> >> > > > > >>> >>> >> > > > > >>> >>> >> > What triggers the change to the component tree? On which > > > thread? > > > >>> Are > > > >>> >>> you > > > >>> >>> >> > using websockets? > > > >>> >>> >> > > > > >>> >>> >> > Sven > > > >>> >>> >> > > > >>> >>> >> In general this thread is not initialized by user action but > > by > > > >>> >>> >> application. So yes, it can be push from a server (eg. using > > > >>> >>> >> Atmosphere - this is my case) or by ajax self updating > > behavior. > > > >>> >>> >> > > > >>> >>> >> -- > > > >>> >>> >> DS > > > >>> >>> >> > > > >>> >>> >> > > > > >>> >>> >> > > > > >>> >>> >> > > > > >>> >>> >> > On 07/04/2014 12:13 PM, Daniel Stoch wrote: > > > >>> >>> >> >> > > > >>> >>> >> >> Hi all, > > > >>> >>> >> >> > > > >>> >>> >> >> I think such question occurs from time to time on this > > list, > > > >>> but I > > > >>> >>> >> >> have never found a good answer how to solve such problem > in > > > >>> general. > > > >>> >>> >> >> The problem is similar to my last question: > > > >>> >>> >> >> > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > http://apache-wicket.1842946.n4.nabble.com/How-to-handle-click-on-disabled-links-ListenerInvocationNotAllowedException-td4666287.html > > > >>> >>> >> >> but now there is a situation when link was removed from > > page > > > >>> (not > > > >>> >>> >> >> disabled). > > > >>> >>> >> >> > > > >>> >>> >> >> So page was rendered in a browser, on the server > component > > > tree > > > >>> was > > > >>> >>> >> >> changed, but user clicks a link in a browser before this > > > changes > > > >>> >>> will > > > >>> >>> >> >> be pushed to it. It leads to an exception: > > > >>> >>> >> >> > > > >>> >>> >> >> org.apache.wicket.WicketRuntimeException: Component 'xxx' > > has > > > >>> been > > > >>> >>> >> >> removed from page. > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:178) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201) > > > >>> >>> >> >> at > > > >>> >>> >> >> > > > >>> >>> >> > > > >>> >>> > > > >>> > > > > > > org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:137) > > > >>> >>> >> >> at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:735) > > > >>> >>> >> >> at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:848) > > > >>> >>> >> >> > > > >>> >>> >> >> How it should be properly handled in application? > > > Unfortunately > > > >>> this > > > >>> >>> >> >> is not a dedicated exception to catch somewhere, but a > > common > > > >>> >>> >> >> WicketRuntimeException. > > > >>> >>> >> >> > > > >>> >>> >> >> -- > > > >>> >>> >> >> Best regards, > > > >>> >>> >> >> Daniel > > > >>> >>> >> >> > > > >>> >>> >> >> > > > >>> >>> > > > --------------------------------------------------------------------- > > > >>> >>> >> >> To unsubscribe, e-mail: > > [email protected] > > > >>> >>> >> >> For additional commands, e-mail: > > > [email protected] > > > >>> >>> >> >> > > > >>> >>> >> > > > > >>> >>> >> > > > > >>> >>> >> > > > > >>> > --------------------------------------------------------------------- > > > >>> >>> >> > To unsubscribe, e-mail: > [email protected] > > > >>> >>> >> > For additional commands, e-mail: > > [email protected] > > > >>> >>> >> > > > > >>> >>> >> > > > >>> >>> >> > > > >>> > --------------------------------------------------------------------- > > > >>> >>> >> To unsubscribe, e-mail: [email protected] > > > >>> >>> >> For additional commands, e-mail: > [email protected] > > > >>> >>> >> > > > >>> >>> >> > > > >>> >>> > > > >>> >>> > > > --------------------------------------------------------------------- > > > >>> >>> To unsubscribe, e-mail: [email protected] > > > >>> >>> For additional commands, e-mail: [email protected] > > > >>> >>> > > > >>> >>> > > > >>> >> > > > >>> >> > > > >>> >> -- > > > >>> >> Regards - Ernesto Reinaldo Barreiro > > > >>> >> > > > >>> > > > > >>> > > > > >>> > > > > >>> > -- > > > >>> > Regards - Ernesto Reinaldo Barreiro > > > >>> > > > >>> > --------------------------------------------------------------------- > > > >>> To unsubscribe, e-mail: [email protected] > > > >>> For additional commands, e-mail: [email protected] > > > >>> > > > >>> > > > >> > > > >> > > > >> -- > > > >> Regards - Ernesto Reinaldo Barreiro > > > >> > > > > > > > > > > > > > > > > -- > > > > Regards - Ernesto Reinaldo Barreiro > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > > > >
