DWR示例程序

su0*_*u03 2 javascript dwr

我正在尝试使用直接Web远程处理编写示例程序.通过网站http://directwebremoting.org/有一些基本问题.请帮我

该怎样尝试该程序http://directwebremoting.org/dwr-demo/simple/text.html

  1. 在哪里保存html和javascript代码以及用什么名字???
  2. 他们说要包括一些2脚本(engine.js和util.js).在哪个页面我应该包括这两个.
  3. 他们也给了一个java代码,在哪里保存这个???

sme*_*ven 10

要从DWR开始,您必须在以下位置创建dwr.xml文件

/WEB-INF/dwr.xml

将dwr.jar文件添加到

/WEB-INF/lib/dwr.jar

如果未创建lib文件夹,则创建它.

你必须如何kwno,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>
   ...
Run Code Online (Sandbox Code Playgroud)

您可以测试DWR配置

    http://yourapp:port/dwr
Run Code Online (Sandbox Code Playgroud)

检查yourapp是否为应用程序的名称,port是已分配端口的编号.

那么现在你必须创建一个与DWR和JSP页面交互的类控制器.像这样的东西

com.dwr.test.MyController

     public class MyController {
          public String doSomething() {
              return "example" ;
          }
     }
Run Code Online (Sandbox Code Playgroud)

你必须告诉DWR这是一个控制器,所以在你的dwr.xml文件中你必须写

    <create creator="new" javascript="mycontroller">
        <param name="class" value="com.dwr.test.MyController "/>
     </create>
Run Code Online (Sandbox Code Playgroud)

检查 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>
    ...
Run Code Online (Sandbox Code Playgroud)

这东西怎么样?两个脚本行(util一个引擎)对DWR至关重要,这是DWR用来工作的主要场景.第三行是您最近在drw.xml文件中声明的Controller的名称.您不需要创建此文件,DWR负责创建此文件.

现在你可以将你的方法用于任何HTML控制器,javascript函数或其他任何东西

    mycontroler.doSomething({
        callback : function (data){
            alert(data) ;
        } 
    });
Run Code Online (Sandbox Code Playgroud)

要了解更多方法,传递参数参数我建议您访问DWR的网页

http://directwebremoting.org/dwr/index.html