I've opened the issue:
https://github.com/sebfz1/wicket-jquery-ui/issues/153


On Thu, Feb 5, 2015 at 10:29 AM, Sebastien <seb...@gmail.com> wrote:

> Hi Chris,
>
> Right, Sortable is processing events thought the Event Bus, that's because
> 2 sortables can be connected and then, these should be able to communicate
>
> As you are sending the event from the Sortable, you enter the condition:
> if (event.getSource() instanceof Sortable<?>)
>
> I will try to find out how I can add a check, but as Sortable is using a
> generic model object (typeof T)...
> I think the correct solution/workaround would be that you change the
> broadcast type to EXACT, so Sortable#onEvent will not be triggered.
>
> Thanks & best regards,
> Sebastien.
>
>
>
> On Wed, Feb 4, 2015 at 8:55 PM, Chris <chris...@gmx.at> wrote:
>
>> Hi Sven, thanks.
>>
>> The onRemove method is from the class
>> com.googlecode.wicket.jquery.ui.interaction.sortable.Sortable:
>>
>> @Override
>> public void onRemove(AjaxRequestTarget target, String item) {
>>     super.onRemove(target, item);
>> }
>> Why is the payload processed in this method, as it takes the target as
>> parameter? Is there another way to render the other panel or rewrite the
>> payload?
>>
>> br, Chris
>>
>>
>> > Am 04.02.2015 um 20:41 schrieb Sven Meier <s...@meiers.net>:
>> >
>> > Hi,
>> >
>> > you're using a DeleteItem as payload of the event:
>> >
>> >       send(getPage(), Broadcast.BREADTH, new DeleteItem(target));
>> >
>> > Yet in #onRemove() you're casting the payload to a String:
>> >
>> >       java.lang.ClassCastException: tripplanner.mycompany.DeleteItem
>> cannot be cast to java.lang.String
>> >            at
>> mycompany.panels.SuitcasePanel$1.onRemove(SuitcasePanel.java:54)
>> >
>> >
>> > Regards
>> > Sven
>> >
>> >
>> > On 04.02.2015 20:32, Chris wrote:
>> >> Hi Tobias - sorry, here it is:
>> >>
>> >> Last cause: mycompany.DeleteItem cannot be cast to java.lang.String
>> >> WicketMessage: Method onRequest of interface
>> org.apache.wicket.behavior.IBehaviorListener targeted at
>> com.googlecode.wicket.jquery.ui.interaction.selectable.SelectableBehavior$1@127d9785
>> on component [Sortable [Component id = sortable]] threw an exception
>> >>
>> >> Root cause:
>> >>
>> >> java.lang.ClassCastException: tripplanner.mycompany.DeleteItem cannot
>> be cast to java.lang.String
>> >>      at
>> mycompany.panels.SuitcasePanel$1.onRemove(SuitcasePanel.java:54)
>> >>      at
>> com.googlecode.wicket.jquery.ui.interaction.sortable.Sortable.onEvent(Sortable.java:126)
>> >>      at
>> org.apache.wicket.settings.def.FrameworkSettings.dispatchEvent(FrameworkSettings.java:132)
>> >>      at
>> org.apache.wicket.ComponentEventSender.dispatchToComponent(ComponentEventSender.java:282)
>> >>      at
>> org.apache.wicket.ComponentEventSender.access$100(ComponentEventSender.java:36)
>> >>      at
>> org.apache.wicket.ComponentEventSender$ComponentEventVisitor.component(ComponentEventSender.java:329)
>> >>      at
>> org.apache.wicket.ComponentEventSender$ComponentEventVisitor.component(ComponentEventSender.java:306)
>> >>      at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
>> >>      at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>> >>      at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
>> >>      at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
>> >>      at
>> org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
>> >>      at
>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
>> >>      at
>> org.apache.wicket.ComponentEventSender.breadth(ComponentEventSender.java:160)
>> >>      at
>> org.apache.wicket.ComponentEventSender.send(ComponentEventSender.java:68)
>> >>      at org.apache.wicket.Component.send(Component.java:4429)
>> >>      at
>> mycompany.panels.SuitcasePanel$1$1.onSelect(SuitcasePanel.java:92)
>> >>      at
>> com.googlecode.wicket.jquery.ui.interaction.selectable.SelectableBehavior.onAjax(SelectableBehavior.java:122)
>> >>      at
>> com.googlecode.wicket.jquery.core.ajax.JQueryAjaxBehavior.respond(JQueryAjaxBehavior.java:171)
>> >>      at
>> org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:633)
>> >>      at java.lang.reflect.Method.invoke(Method.java:483)
>> >>      at
>> org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
>> >>      at
>> org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
>> >>      at
>> org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:250)
>> >>      at
>> org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)
>> >>      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:618)
>> >>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
>> >>      at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
>> >>      at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >>      at
>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>> >>      at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
>> >>      at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >>      at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
>> >>      at
>> org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:106)
>> >>      at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
>> >>      at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
>> >>      at
>> org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:142)
>> >>      at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)
>> >>      at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
>> >>      at
>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
>> >>      at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
>> >>      at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
>> >>      at
>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1081)
>> >>      at
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
>> >>      at
>> org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
>> >>      at
>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566)
>> >>      at
>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523)
>> >>      at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>> >>      at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>> >>      at
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>> >>      at java.lang.Thread.run(Thread.java:745)
>> >>
>> >>
>> >> br, Chris
>> >>
>> >>
>> >>> Am 04.02.2015 um 20:09 schrieb Tobias Soloschenko <
>> tobiassolosche...@googlemail.com>:
>> >>>
>> >>> Hi,
>> >>>
>> >>> would you be so kind and apply some more information like StackTrace
>> of the interal server error.
>> >>>
>> >>> Thanks a lot.
>> >>>
>> >>> kind regards
>> >>>
>> >>> Tobias.
>> >>>
>> >>> Am 04.02.15 um 20:05 schrieb Chris:
>> >>>> Sven, I have an additional situation where I am getting an internal
>> error. Could you help me in figuring out the problem?
>> >>>>
>> >>>> Panel A senses the selection of an item from a user and adds the
>> „sortable“ as container to the ajax target.
>> >>>> In addition, Panel B should be added to the ajax target, using
>> Wicket events.
>> >>>>
>> >>>> The internal error is thrown when using Wicket events to add the
>> additional panel. Without the event, just calling #target.add(sortable) it
>> works.
>> >>>>
>> >>>> Panel A
>> >>>> *************
>> >>>> @Override
>> >>>> public void onSelect(AjaxRequestTarget target, List<String> items) {
>> >>>>    sortable.onRemove(target, items.get(0));
>> >>>>            target.add(sortable);
>> >>>>            send(getPage(), Broadcast.BREADTH, new
>> DeleteItem(target));
>> >>>> }
>> >>>> Panel B
>> >>>> *************
>> >>>> public class PoiListPanel extends Panel {
>> >>>>    @Override
>> >>>>    public void onEvent(IEvent<?> event) {
>> >>>>                    super.onEvent(event);
>> >>>>
>> >>>>                    if (event.getPayload() instanceof DeleteItem) {
>> >>>>                    DeleteItem update = (DeleteItem)
>> event.getPayload();
>> >>>>                    update.getTarget().add(this);
>> >>>>
>> >>>>            }
>> >>>>
>> >>>> }
>> >>>> Chris
>> >>>>
>> >>>>
>> >>>>> Am 04.02.2015 um 14:32 schrieb Grün Christoph <
>> christ...@ec.tuwien.ac.at>:
>> >>>>>
>> >>>>> Sven - thank you. That solved it!
>> >>>>>
>> >>>>>
>> >>>>>> Am 04.02.2015 um 14:14 schrieb Sven Meier <s...@meiers.net>:
>> >>>>>>
>> >>>>>> Your container has to output its markup id:
>> >>>>>>
>> >>>>>>  container.setOutputMarkupId()
>> >>>>>>
>> >>>>>> Regards
>> >>>>>> Sven
>> >>>>>>
>> >>>>>>
>> >>>>>> On 04.02.2015 14:11, Chris wrote:
>> >>>>>>> Hi,
>> >>>>>>>
>> >>>>>>> When the user clicks on a certain icon, a specific part of the
>> page should be reloaded through ajax. The icon is part of a panel, the
>> specific part is a webmarkupcontainer added directly to the page. I am
>> using Wicket Events to push the click event. However, when adding the web
>> markup container as target, I am getting an internal error.
>> >>>>>>>
>> >>>>>>> -> update.getTarget().add(container);
>> >>>>>>>
>> >>>>>>> Can someone help me to fix this?
>> >>>>>>>
>> >>>>>>> *********************
>> >>>>>>> ***** PANEL *****
>> >>>>>>> final WebMarkupContainer suitcaseIcon = new
>> WebMarkupContainer("icon");
>> >>>>>>> icon.setOutputMarkupId(true);
>> >>>>>>> icon.add(new AjaxEventBehavior("onclick") {
>> >>>>>>>         protected void onEvent(AjaxRequestTarget target) {
>> >>>>>>>                 send(getPage(), Broadcast.BREADTH, new
>> AddItem(target));
>> >>>>>>>         }
>> >>>>>>> });
>> >>>>>>>
>> >>>>>>> *********************
>> >>>>>>> ***** PAGE *****
>> >>>>>>> ...
>> >>>>>>> WebMarkupContainer container;
>> >>>>>>> public HomePage() {
>> >>>>>>>         container = new WebMarkupContainer("container");
>> >>>>>>>         add(container);
>> >>>>>>> }
>> >>>>>>>
>> >>>>>>> @Override
>> >>>>>>> public void onEvent(IEvent<?> event) {
>> >>>>>>>         super.onEvent(event);
>> >>>>>>>         if (event.getPayload() instanceof AddItem) {
>> >>>>>>>         AddItem update = (AddItem) event.getPayload();
>> >>>>>>>         update.getTarget().add(container);
>> >>>>>>>    }
>> >>>>>>> }
>> >>>>>>>
>> >>>>>>> *********************
>> >>>>>>> ***** AddItem *****
>> >>>>>>> public class AddItem {
>> >>>>>>>    private final AjaxRequestTarget target;
>> >>>>>>>
>> >>>>>>>    public AddItem(AjaxRequestTarget target) {
>> >>>>>>>        this.target = target;
>> >>>>>>>    }
>> >>>>>>>
>> >>>>>>>    public AjaxRequestTarget getTarget() {
>> >>>>>>>        return target;
>> >>>>>>>    }
>> >>>>>>> }
>> >>>>>>>
>> >>>>>>> Thanks.
>> >>>>>>> Chris
>> >>>>>>
>> ---------------------------------------------------------------------
>> >>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> >>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>> >>>>>>
>> >>>>>
>> ---------------------------------------------------------------------
>> >>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> >>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>> >>>>>
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> >>> For additional commands, e-mail: users-h...@wicket.apache.org
>> >>>
>> >>
>> >
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> > For additional commands, e-mail: users-h...@wicket.apache.org
>> >
>>
>>
>

Reply via email to