GWT请求工厂中的实体代理更改侦听器



我希望使用请求工厂代理实现UI和数据的双向绑定,为此,我需要一种方法来侦听EntityProxy或ValueProxy中的更改。如果它们是普通模型,我可以将我的视图附加到模型的更改侦听器,但在请求工厂中,模型或"代理"是接口,我不知道如何让视图知道何时调用"setter"方法。

有没有一种方法可以做到这一点,不用包装代理并将setter委派给代理,同时引发事件?我希望将该功能直接"插入"到代理中。

我也对这个问题进行了一些思考和研究,但还没有抽出时间。

我认为你需要看看gwt MobileWebApp的例子。它们有一个Task域对象,它有一个代理接口,但它们在客户端使用接口的实现(请参见TaskProxy&TaskProxyImpl)

我很想听听你是否会在这方面取得一些进展。希望这能帮助

我们实际上已经想出了一个解决方法。我们利用GWT生成器代码,在autobean代理中添加了一个Listener字段。之后,我们在每个生成的setter方法中添加了一个listener.execute()。所以现在我们可以将change listeners附加到代理并监听它们。

唯一让我担心的是一个JSNI调用,它用于调用一个受保护的方法,同时还利用GWT生成器代码。这有多好?

最新更新