I am attempting my first go at the new Tapestry validation and seem to have
run into a problem. The vast majority of the pages in my app have listeners
that return a valid ILink, instead of a void signature. According to the
tapestry docs, this is to do a redirect after submit, which is what I want
(the users insist upon the redirect-after-post pattern, to avoid browser
refresh issues).

The problem is, if there's a validation error, it won't get caught when
returning an ILink. My listener ends up processing as if nothing was wrong
when there's a validation error. If I replace my listener code with a simple
"return null;", then if there's a validation error, it will be marked
appropriately.

Is there a way built into the validation framework to handle it? Though I
may be missing something (and I've checked all of the docs I could find) It
seems like it doesn't work when a listener returns ILink. Because of
popularity of the redirect-after-post pattern, I would imagine that this
would not be an "edge" case. Maybe there's some kind of usage of delegates
or listeners or something that I'm missing?

Thanks,

Drew

Reply via email to