DWR 能够和任何框架结合。这个网站是个极端巧妙的证据,因为它把 DWR 使用在 Drupal(PHP)。

DWR 和 Struts 整合有 2 个层次。最基础的层次就是同时使用这两个框架,这是非常容易的,但是这样就不允许在 DWR 和 Struts 之间共享 Action 了。

DWR 能构调用任何方法,所以你也能从调用一个 Struts action,除非你不想那么做。ActionForm 的内容是什么,当返回 ActionForward 时 DWR 怎么做?

一个比较好方法是重构你想调用的 Action,提取出 Action 的逻辑。DWR 和你的 Action 就可以同时调用相
同的方法了。

Struts creator

DWR1.1 增加了一个 StrutsCreator。你可以在 dwr.xml 中这样使用:

<allow>
...
<create creator="struts" javascript="ScriptName">
<param name="formBean" value="formBeanName" />
</create>
...
</allow>

这样你就能从 DWR 调用 FormBeans。

开始顺序

如果正在使用 Struts 创造器,那么你应该确保 Struts 初始化在 DWR 之前。你要保证你在 web.xml 里有一
个<load-on-startup>的值,其中 Struts 的值比 DWR 设置地要低。