Hi Tapestry Users,
I have problems accessing listener parameters in pageValidate, when a page is
called as a direct service.
When accessing the page (see below) as an external service with a parameter
(sp=1), the listener parameters in pageValidate contains the value 1.
pageValidate[1]
activateExternalPage[1]
prepareForRender[1]
But when the same page is called as a Direct Service (clicking on the
DirectLink), the listener parameter in pageValidate is null, whereas in
prepareForRender the listener parameter contains the value 1.
pageValidatenull <--------------------------------
prepareForRender[1]
I am using 4.1.1-SNAPSHOT, does anybody have an idea, how i can access the
listener parameters in pageValidate or why the parameters are null?
the page:
<html jwcid="@Shell" title="">
<body jwcid="@Body">
<a jwcid="@DirectLink" listener="listener:onSubmit"
parameters="ognl:{1}">test</a>
</body>
</html>
and the class:
public abstract class TestPage extends BasePage implements
PageValidateListener, IExternalPage {
public void onSubmit(IRequestCycle cycle) {
// do nothing
}
public void activateExternalPage(Object[] parameters, IRequestCycle cycle) {
System.out.println("activateExternalPage" +
Arrays.toString(cycle.getListenerParameters()));
}
public void pageValidate(PageEvent event) {
System.out.println("pageValidate" +
Arrays.toString(event.getRequestCycle().getListenerParameters()));
}
protected void prepareForRender(IRequestCycle cycle) {
System.out.println("prepareForRender" +
Arrays.toString(cycle.getListenerParameters()));
}
}
Regards,
Manri Offermann