1. 第一个DWR程序
1.1 准备工作
把dwr.jar放在WebRoot/WEB-INF/lab下,另外还需要engine.js(必需)和util.js,不过我没找到在哪,加载时直接加载的,
1.2 在WebRoot/WEB-INF目录下配置web.xml,配置时注意:把所有<servlet>标签放在一起,所有<servlet-mapping>标签放在一起
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- dwr -->
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>
org.directwebremoting.servlet.DwrServlet
</servlet-class>
<init-param>
<param-name>debug</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>
<!-- <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> -->
</web-app>
1.3 配置dwr.xml目录与web.xml相同,其中value就是class的位置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"
"http://getahead.org/dwr/dwr20.dtd">
<dwr>
<allow>
<create javascript="service" creator="new">
<param name="class" value="helloWorld.Service"></param>
</create>
</allow>
</dwr>
1.4 编写java代码,写一个java类(Service.java),普通的就行
package helloWorld;
public class Service {
public String sayHello(String yourName) {
//可以访问数据库的复杂代码
return "Hello world: " + yourName;
}
}
OK了,到这里就可以测试了,登录 http://localhost:8080/yourProjectName/dwr
你会看到一个service的链接,点击找到sayHello( );
提示:"Hello world: 输入名字"测试成功!
1.5 加上JSP文件(first_dwr.jsp)
这JSP文件里说道就多了,首先看加载的几个JS文件,其中../interface/service.js文件是dwr自动生成的JS,JS名字与dwr.xml文件配置里的 javascript="service" 名字(service)要一样。再看JS代码,firstDwr()不说了就是下面调用到的一个function, dwr.util是util.js的功能,至于util.js有多少功能有待查阅,先不管了。再下面service.sayHello(userName,callBackHello);中service是dwr.xml中的配置名字,也即dwr生成的JS文件名,大小写敏感,这里方法多了个参数,后面那个是反调函数的名字,来调用function callBackHello(data)这个函数,当然也可以把函数直接写到参数的位置,如:function firstDwr(){
var userName = dwr.util.getValue("userName");
//alert(userName);
service.sayHello(userName, function(data){
dwr.util.setValue("result",data);
});
}
Data就是你界面上输入框里的内容,它把值赋给字符创"result",由<div id="result"></div>显示在界面上。以下是JSP内容
<%@ page language="java" pageEncoding="UTF-8"%>
<html>
<head>
<title>My JSP 'first_dwr.jsp' starting page</title>
<script type='text/javascript' src='/Ext_Dwr_Spring/dwr/engine.js'></script>
<script type='text/javascript' src='/Ext_Dwr_Spring/dwr/util.js'></script>
<script type='text/javascript' src='/Ext_Dwr_Spring/dwr/interface/service.js'></script>
<script type="text/javascript">
function firstDwr(){
var userName = dwr.util.getValue("userName");
//alert(userName);
service.sayHello(userName,callBackHello);
}
function callBackHello(data){
dwr.util.setValue("result",data);
}
</script>
</head>
<body>
<div>请输入姓名:<input type="text" name="userName"></div>
<div><input type="button" value="提交" onclick="firstDwr()"></div>
<div id="result"></div>
</body>
</html>
地址栏输入http://localhost:8080/yourProjectName/first_dwr.jsp
输入姓名,点击提交出现【Hello world: 输入名字】,测试成功,第一个dwr程序完成!
分享到:
相关推荐
【标题】:“我的第一个DWR程序” 在IT领域,DWR(Direct Web Remoting)是一个JavaScript库,它允许Web应用程序与服务器端Java代码进行实时、双向通信,无需使用Ajax或Flash。DWR使得动态更新页面内容变得更加简单...
dwr3框架学习笔记–第一个dwr3程序sayhello 博文:http://blog.csdn.net/yuchen837295036/article/details/52682417
- **第一个DWR程序:HelloWorld** - 将DWR库添加到项目中。 - 配置`web.xml`和`dwr.xml`文件,定义服务和转换规则。 - 编写服务接口和实现类。 - 测试DWR是否正常工作。 - 创建JSP页面,调用DWR服务。 #### ...
在本"第一个DWR例子源程序"中,我们将深入探讨DWR的基础概念、工作原理以及如何通过实例来实现一个简单的DWR应用。 首先,DWR的核心功能在于提供了一个桥梁,使得JavaScript可以直接调用服务器端的Java方法,而无需...
* 第一个DWR程序:Hello World。Hello World是一个经典的入门示例,用于演示DWR的基本使用方法。 * 将DWR放入你的工程。将DWR库添加到你的项目中,用于使用DWR的功能。 * 编辑配置文件。DWR的配置文件是dwr.xml,...
DWR (Direct Web Remoting) 是一个开源的 Java 库,专门用于构建 AJAX(Asynchronous JavaScript and XML)Web 应用。它使得开发者能够在浏览器端的 JavaScript 代码中直接调用服务器端的 Java 方法,从而简化了...
**1.2 第一个DWR程序:HelloWorld** - **1.2.1 将DWR放入你的工程** - 首先,需要将DWR的相关库添加到项目中。这通常包括`dwr.jar`等核心库文件。 - **1.2.2 编辑配置文件** - 需要在项目的`WEB-INF`目录下创建或...
第一个DWR程序 <script type='text/javascript' src='dwr/interface/Hello.js'> function greet() { var name = document.getElementById('name').value; Hello.hello(name, function(response) { document....
第一个 DWR 程序 <script type='text/javascript' src='dwr/interface/Hello.js'> function callHello() { Hello.hello(document.getElementById('name').value, function(response) { alert(response); });...
第一个DWR程序 <script type='text/javascript' src='dwrrpc.js'></script> function sayHello() { var name = document.getElementById("name").value; Hello.hello(name, function(response) { document....
第一个DWR程序 <script type='text/javascript' src='/path/to/dwr/engine.js'> <script type='text/javascript' src='/path/to/dwr/interface/Hello.js'> function sendHello() { var name = document....
**1.2 第一个DWR程序:HelloWorld** **1.2.1 将DWR放入你的工程** - 下载DWR库并将其添加到项目的类路径中。 **1.2.2 编辑配置文件** - 修改`web.xml`文件以包含DWR相关的配置。 - 创建`dwr.xml`文件来定义服务...
- **1.2 第一个DWR程序:HelloWorld** - **1.2.1 将DWR放入你的工程** - 描述了如何将DWR添加到现有的Java Web项目中。 - **1.2.2 编辑配置文件** - 指导读者如何修改web.xml文件以支持DWR。 - **1.2.3 编写...
- **第一个DWR程序**: 通常以一个简单的“Hello World”示例开始,用于演示如何设置DWR环境和进行基本的远程方法调用。 - **将DWR放入你的工程**: 需要在项目中引入DWR相关的依赖库。 - **编辑配置文件**: 主要是`...