我想为一个组件实现一个事件处理程序,该事件处理程序是动态生成的。这意味着我有一个Table
,其源绑定到自定义TableModel
(它实现了一个接口JsonGenerator
,可以使用它生成json数据)。在此TableModel
中,我添加了一些自定义组件,这些组件在其状态更改时会触发事件(valueChanged
)。这些组件具有ID(1到4)。但是,我不能仅仅为此添加一个类似的方法:
void onValueChangedFrom1 ()
因为有时不存在ID为1的组件。尝试离开时会出现以下异常:
Method de.[...].onValueChangedFrom1() references component id '1' which does not exist.
我无法修改自定义TableModel
,JsonGenerator
或其他自定义组件。
知道定制组件的值可以通过像这样的挂毯服务Request
来访问可能很有趣:
request.getParameter("1");
但是,当此值更改时,如何添加事件处理程序?在Tapestry中甚至有可能吗?