1

我有一个需要移植到 GWT 的 AWT 小程序应用程序。小程序屏幕在元数据中描述,小程序使用反射动态呈现每个屏幕。

我们希望在 GWT/ExtGWT 中有同样的东西。

我已经构建了这个 ExtJS 的工作版本,其中元数据以 JSON 的形式转换为 ExtJS 屏幕配置。这种方法的缺点是需要用 Javascript 编写控件到数据的“接线”。

GWT 是首选,因为它都是 Java 代码,没有 JS。深入研究后,可以使用 GWT 渲染屏幕,使用 GWT.create() 关闭元数据。

我遇到的问题是将动态创建的按钮连接到事件处理程序的接线需要 GWT 不支持的反射。

这个结论正确吗?如果是这样,还有其他方法可以使用 ExtGWT 实现这种类型的动态 UI 吗?

4

1 回答 1

0

对于我们没有声明性 UI 的 extGWT,最简单的解决方案可能是在 java 中添加一个映射/配置您的处理程序,该处理程序引用实例化的类。处理程序,即:

Map<String, ActionListener> mapping = new HashMap<String, ActionListener>();
mapping.put("HandleClicked", new HandleClickedActionListener());

然后你可以尝试为你的元数据找到一个实现类。

对于纯 GWT 2,您可以查看http://code.google.com/intl/de-DE/webtoolkit/doc/latest/DevGuideUiBinder.html#Simple_binding了解它是如何完成的。有可能创建一个类似的解决方案,它为您自己的 extgwt 解决方案注释方法,就像 gwt 中的解决方案一样。

于 2010-04-09T12:57:53.190 回答