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