yes - that's because the response was not served by the appropriate
service (it should have been PartialService, but it wasnt)... if you
are already using a patched version of Tapestry, and you have some
enthusiasm, please try the following:

modify tapestry's Form.java, and make     private ILink
getLink(IRequestCycle cycle, String actionId)  a protected method...
override in tacos PartialForm.java like this:

protected ILink getLink(IRequestCycle cycle, String actionId) {
        IEngine engine = cycle.getEngine();
        IEngineService service = engine.getService(PartialService.SERVICE_NAME);
        return service.getLink(cycle, this, new String[] { actionId });
}

after these changes, verify that the hidden field "service" in your
Forms starts with "partial/..."   - i think something like this should
to the trick.

i found that monitoring the http traffic with something like tcpdump,
packetyzer or the charles http proxy is really helpful in diagnosing
xmlhttprequest-based apps.

viktor

On Apr 12, 2005 4:01 PM, Jamie <[EMAIL PROTECTED]> wrote:
> Hmm... the javascript error I get is:
> 
> Error: this.transport.responseXML has no properties
> Source File:
> http://localhost/registrar-student/asset.svc?sp=S%2Fnet%2Fsf%2Ftacos%2Fpartial%2FPartial.js&sp=S8304332074860f58113708089fb60cc3
> Line: 112
> 
> 
> Viktor Szathmary wrote:
> 
> >hi,
> >
> >the PartialForm relies on a nasty, evil hack, because i was lazy :)
> >overriding the base tapestry Form component's service link generating
> >behavior is not currently possible without copypasting the entire
> >sourcecode... so what i ended up doing is a dynamic substitution in
> >the javascript:
> >
> >       // crazy replacement
> >       var s = values["service"].split("/");
> >       s[0] = "partial";
> >       if (s.length==4) s.splice(3,0,s[2]);
> >       s = s.concat(parts);
> >       values["service"] = s.join("/");
> >
> >so this turns the value of the "service" hidden param from something like
> >
> >  direct/1/FooPage/$Form
> >
> >to
> >
> >  partial/1/FooPage/FooPage/$Form  (plus the part IDs)
> >
> >which is what we really needed in the first place. This is ugly, but
> >still seemed less gruesome than copypasting the entire Form
> >implementation just to override 3 lines...
> >
> >I'm not familiar with the operation of the "friendly urls" patch, so I
> >don't have any immediate suggestions, but I can look into this
> >later... in the meantime, I'm open for suggestions as to how to alter
> >the service link rendering behavior in Form without serious
> >copypasting..  I guess the best would be to submit a patch for
> >Tapestry 3.0.4 that makes the offending method in Form.java protected
> >instead of private:
> >
> >private ILink getLink(IRequestCycle cycle, String actionId) { ... }
> >
> >that's all I would need to override :) commiters?
> >
> >regards,
> >  viktor
> >
> >
> >
> >
> >On Apr 12, 2005 2:42 PM, Jamie <[EMAIL PROTECTED]> wrote:
> >
> >
> >>Has anyone got these working in a Friendly URLs patch to 3.0.3? I've
> >>tried the PartialForm on a couple of my pages and nothing happens at all
> >>(no errors, nothing logged, etc). I've got the Parts with IDs, and the
> >>PartialForm--but no submission seems to take place and I'm getting no
> >>errors. I've run the tacos example war in the same server with no problem.
> >>
> >>Thanks,
> >>Jamie
> >>
> >>---------------------------------------------------------------------
> >>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]

Reply via email to