5

是否可以在 GWT 中创建可以动态加载并添加到 GWT Web 应用程序的小部件/portlet,以及 GWT 小部件可以驻留在单独的 war 文件中的位置?

为了澄清我的问题:符合 JSR168/JSR286 的门户可以在单独的项目(war 文件)中创建 portlet 并将它们动态加载到门户页面中。假设您想在 GWT 应用程序中做类似的事情。因此,假设我们为 GUI 创建了一个仅使用 GWT 的门户(没有 JSP 等),并且我们希望动态添加一个用纯 GWT 编写的“portlet”。那可能吗?

我可以想象它可以使用 IFrame 来完成,但如果这样的 GWT 小部件/portlet 完全成为 GWT 主机“门户”应用程序的一部分并共享它的样式表和其他资源,那就更好了。

4

3 回答 3

2

我想“GWT portlet”只不过是您自己编写的一个小部件(并且可能实现了一个公共接口)。

困难的部分是动态地允许预编译的 gwt 应用程序包含另一个 gwt 组件(在本例中为 portlet),而无需再次使用源代码进行编译(这似乎是问题所暗示的)。

于 2009-05-05T10:14:35.873 回答
1

我也一直在研究这个问题,尤其是在看过 Wave 演示之后。据我所知,wave 团队采用的方法是使用 Google Gadget api 或 Gadget api 的变体。谷歌也有一个使用 GWT 编写小工具的教程。我想你会使用基于事件的 api,其中 JSO 对象在 Gadget 和 GWT 应用程序之间传递。请注意,如果来自不同的域,这也可能会引入 XSS 问题。我认为这类似于在 Flash 中动态加载 swf。事件方法类似于安全地使用跨站点动态加载的 swf。

于 2009-12-21T11:51:57.797 回答
0

我还是 GWT 的新手,但根据我读过的内容,我可以告诉你,你必须遵循一个架构 MVP 和一个应用控制器,它可以动态地“插入”和“播放”你想要使用必须使用的元数据调度的内容来自模型层......类似于“元应用程序”的东西

于 2011-06-20T18:57:32.517 回答