要开始使用 DWR,您必须在以下位置创建 dwr.xml 文件
/WEB-INF/dwr.xml
添加 dwr.jar 文件到
/WEB-INF/lib/dwr.jar
如果 lib 文件夹没有创建,则创建它。
以及您必须如何知道,DWR 使用 servlet 类来实现功能,因此您必须声明它们必须如何工作。你必须修改你的 web.xml 文件来告诉 DWR 它是一个 servlet。
...
<servlet>
<display-name>DWR Servlet</display-name>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>jsonpEnabled</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
...
你可以测试你的 DWR 配置去
http://yourapp:port/dwr
检查 yourapp 是您的应用程序的名称,port 是分配的端口号。
现在您必须创建一个与 DWR 和您的 JSP 页面交互的类控制器。像这样的
com.dwr.test.MyController
public class MyController {
public String doSomething() {
return "example" ;
}
}
你必须告诉 DWR 这是一个控制器,所以你必须在你的 dwr.xml 文件中写
<create creator="new" javascript="mycontroller">
<param name="class" value="com.dwr.test.MyController "/>
</create>
检查一下
javascript="mycontroller"
是你将如何从你的 JSP 页面调用你的 java 类控制器
现在您已经与您的 App 控制器和 DWR 建立了控制器连接。
稍后,您必须告诉您的 JSP 页面使用什么控制器。
我以 index.jsp 为例
<html>
<head>
<script type='text/javascript' src='/webbitacora/dwr/util.js'></script>
<script type='text/javascript' src='/webbitacora/dwr/engine.js'></script>
<script type='text/javascript' src='/webbitacora/dwr/interface/mycontroller.js'></script>
...
这些东西是如何工作的?这两个脚本行(使用引擎)对于 DWR 至关重要,这是 DWR 用于工作的主要场景。
第三行是您最近在 drw.xml 文件中声明的控制器的名称。您不需要创建这些文件,DWR 负责创建这些文件。
现在您可以将您的方法与任何 HTML 控制器、javascript 函数或其他任何东西一起使用
mycontroler.doSomething({
callback : function (data){
alert(data) ;
}
});
要了解更多方法,传参参数我推荐你访问DWR的网页
http://directwebremoting.org/dwr/index.html