On Sun, 10 Sep 2006 02:57:29 +0430, Eelco Hillenius
<[EMAIL PROTECTED]> wrote:
> If you can use Ajax, you could even implement it more transparently.
> In that case, make a panel for the normal display of the row, and a
> panel that has the buttons. When the row is clicked, you do an ajax
> roundtrip, and replace the display component with the buttons
> component. And attached to these buttons are yet two other ajax round
> trips, one for canceling that would redisplay the normal row, and the
> other would delete the row and let the whole list component render
> itself (be careful: don't re-render a lists with ajax directly, but
> instead re-render the parent of the list.
in ConfrimPanel, ajax of cancel button want replace its parent [it's
ConfrimPanel] with person panel
public ConfrimPanel(final String id, final MarkupContainer row,
final Person person) {
super(id );
setOutputMarkupId(true);
add(new AjaxFallbackLink("ok") {
public void onClick(final AjaxRequestTarget target) {
Application1.getPersons().remove(person);
target.addComponent(row.getParent().getParent());
}
});
add(new AjaxFallbackLink("cancel") {
public void onClick(final AjaxRequestTarget target) {
PersonPanel personPanel = new PersonPanel(id, person);
// reuse a same id for two panel.
row.replace(personPanel); // replacing, call
page.componentRemoved(aConfrimPanel);
target.addComponent(personPanel);
}
});
}
on AbstractDefaultAjaxBehavior
public final void onRequest() {
...
finally
{getComponent().getPage().setVersioned(isPageVersioned); }
getComponent() = aConfrimPanel
getPage() = null
maybe i missing things but wicket tell :
ERROR RequestCycle - No Page found for component
[MarkupContainer [Component id = cancel, page = <No Page>, path =
person_or_confrim:cancel.Home$ConfrimPanel$2]]
java.lang.IllegalStateException: No Page found for component
[MarkupContainer [Component id = cancel, page = <No Page>, path =
person_or_confrim:cancel.Home$ConfrimPanel$2]]
at wicket.Component.getPage(Component.java:1041)
at
wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:220)
at
wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:98)
at
wicket.request.compound.DefaultEventProcessorStrategy.processEvents(DefaultEventProcessorStrategy.java:65)
at
wicket.request.compound.AbstractCompoundRequestCycleProcessor.processEvents(AbstractCompoundRequestCycleProcessor.java:57)
at wicket.RequestCycle.doProcessEventsAndRespond(RequestCycle.java:822)
at wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:855)
at wicket.RequestCycle.step(RequestCycle.java:936)
at wicket.RequestCycle.steps(RequestCycle.java:1010)
at wicket.RequestCycle.request(RequestCycle.java:452)
at wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:210)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
at
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
at
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
at
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user