I should clarify, this all works when using the normal core ajax
services provided in 4.1.1, not specifically in the XTile service.

On 12/6/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote:
FYI, this all "just works" as expected in t 4.1.1. (the solution is
still a little questionable but it's the best default behavior I could
think of so far)

On 12/6/06, Robert Zeigler <[EMAIL PROTECTED]> wrote:
> cycle.activate will make the "activated" page be the page that renders.
> However... the xtile service doesn't result in a page render. It results
> in an "ajax" response; hence, cycle.activate won't work. What you might
> consider doing is putting the url of the page you want to activate into
> the service parameters.  Then you could just replace the document
> location with the new url. Something along the lines of:
>
> else {
>    IEngineSerivce svc = cycle.getEngine().getService(Tapestry.PAGE_SERVICE);
>    Object[] params = new Object[] { "NoviaMail_ReadMail" };
>    ILink link = svc.getLink(false,params);
>    cycle.setServiceParameters(new Object[]
> {"redirect",link.getAbsoluteURL()});
> }
>
> and in javascript, something like:
>
> my_function(params) {
>    if (params[0] == "redirect") {
>      document.location.href=params[1];
>      return;
>    }
>    ...
> }
>
> Something along those lines.
>
> Robert
>
> MattHouston wrote:
> > Hi !
> >
> > I have a probleme using the XTile component and cycle.activate.
> > I do sth in AJAX with XTile and in my Java function who handle requests,
> > sometimes i only receive and send requests to the client, that works good.
> > But i would like to sometimes not send a request but activate another page,
> > I thought I can do that with cycle.activate, but it doesn't works...
> >
> > The code of my function :
> >
> >       public void handleListOfMailsRequest(IRequestCycle cycle) {
> >               Object[] params = ((RequestCycle) 
cycle).getServiceParameters();
> >               System.out.println("length parmas : "+params.length);
> >               if (params.length == 0) return;
> >
> >               if (params[0].equals("isNews")) { // works good
> >                         [...]
> >
> >                       String[] ret = {mm.getDate(), mm.getFrom(), 
mm.getSubject(),
> > mm.getSize(), "false", mm.getId()};
> >                       ((RequestCycle) cycle).setServiceParameters(ret);
> >               }
> >               else { //dont work
> >                       cycle.activate(NoviaMail_ReadMail);
> >               }
> >       }
> >
> > Any help will be apprecated.
> > Thanks
> >
> > MattHouston
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


--
Jesse Kuhnert
Tapestry/Dojo team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com



--
Jesse Kuhnert
Tapestry/Dojo team member/developer

Open source based consulting work centered around
dojo/tapestry/tacos/hivemind. http://blog.opencomponentry.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to