Tapestry ajax
Ejecuta el método onUpdate() y después actualiza la zona con el resultado devuelto por el mismo método.
<t:eventlink t:event="update" t:zone='zone1'>refresh</t:eventlink>
<t:zone t:id='zone1'>
</t:zone>
@InjectComponent
private Zone zone1;
Object onUpdate() {
return zone1.getBody();
}
Ejecuta el método onUpdate() y después actualiza la zona con el resultado devuelto por el mismo método.
$("#button1").click(function() {
var params = {
url:'http://localhost:8080/msurvey-web/test:update'
};
$("#zone2").tapestryZone("update", params);
});
<t:zone t:id='zone2' id='zone2'>
</t:zone>
public void Test {
@Inject private Zone zone2;
Object onUpdate() {
return zone2.getBody();
}
}
<t:zone t:id="zone1" id="zone1">
${edad}
</t:zone>
<t:zone t:id='zone2' id='zone2'>
${nombre}
<t:actionlink t:id="refresh" t:zone="zone1">refresh</t:actionlink>
</t:zone>
@Inject
private AjaxResponseRenderer ajaxResponseRenderer;
@InjectComponent
private Zone zone1, zone2;
public String getNombre() {
return "iberck" + Math.random();
}
public double getEdad() {
return Math.random();
}
@Log
void onActionFromRefresh() {
ajaxResponseRenderer.addRender(zone1);
ajaxResponseRenderer.addRender(zone2);
}
<t:zone t:id="formZone" id="formZone">
<t:form t:id="ajaxForm" t:zone="^">
</t:form>
</t:zone>
@InjectComponent
private Zone formZone;
Object onSuccess() {
return formZone.getBody();
}