Java tapestry 5.1中的AjaxResponseRenderer

Java tapestry 5.1中的AjaxResponseRenderer,java,ajax,tapestry,Java,Ajax,Tapestry,我在Tapestry 5.1的一个项目中工作 我在注入AjaxResponseRenderer时遇到问题,因为它在Tapestry 5.1中不存在 下面是我想做的Myclass.java 我无权升级Tapestry版本 您能告诉我如何用另一种方法做到这一点吗?使用时有问题吗?AjaxResponseRenderer应该做同样的事情,因为5.3我对MultiZoneUpdate做了一些研究,但我找不到任何例子,所以我尝试通过调用MultiZoneUpdate.add(“idZone”,Obj)来

我在Tapestry 5.1的一个项目中工作 我在注入AjaxResponseRenderer时遇到问题,因为它在Tapestry 5.1中不存在

下面是我想做的Myclass.java

我无权升级Tapestry版本


您能告诉我如何用另一种方法做到这一点吗?

使用时有问题吗?AjaxResponseRenderer应该做同样的事情,因为5.3我对MultiZoneUpdate做了一些研究,但我找不到任何例子,所以我尝试通过调用MultiZoneUpdate.add(“idZone”,Obj)来做与AjaxResponseRenderer相同的事情,但它没有“t work我认为您需要从事件处理程序返回
MultiZoneUpdate
的实例,而不是像AjaxResponseRenderer那样将区域添加到实例中。可以在tapestry源代码中找到您版本的示例,即:
@Inject 
private AjaxResponseRenderer ajaxResponseRenderer;

 void onValueChangedFromCarMake(String carMake) {

    // A new make has been chosen - clear the model.

    carModel = null;
    carModels = NO_MODELS;

    // Show the models of the chosen make.

    if (carMake != null) {
        if (carMake.equals(MAKE_HONDA)) {
            carModels = HONDA_MODELS;
        }
        else if (carMake.equals(MAKE_TOYOTA)) {
            carModels = TOYOTA_MODELS;
        }
    }

    if (request.isXHR()) {
        ajaxResponseRenderer.addRender(carModelZone);
    }
}