`
bo_hai
  • 浏览: 564223 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

使用DWR完成HelloWorld.

阅读更多

一、到DWR的官方网站上下载dwr.jar包。将其放到项目的lib目录下。开始做第一个dwr程序。

二、web.xml配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	
	<display-name>dwrtest</display-name>
	<servlet>
		<servlet-name>dwr-invoke</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-invoke</servlet-name>
		<url-pattern>/dwr/*</url-pattern>
	</servlet-mapping>
	
  <welcome-file-list>
    <welcome-file>Index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

三、在web.xml同目录下新建dwr.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr/dwr30.dtd">
    
<dwr>
	<allow>
		<create javascript="JDate" creator="new">
			<param name="class" value="java.util.Date"/>
		</create>
		<create javascript="Hello" creator="new">
			<param name="class" value="com.dwr.HelloWorld"/>
		</create>
	</allow>
</dwr>  

 

四、Index.jsp内容如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>DWR's  HelloWorld</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
	<script type='text/javascript' src='dwr/interface/Hello.js'></script>
	<script type='text/javascript' src='dwr/engine.js'></script>
	<script type='text/javascript' src='dwr/util.js'></script>
	<script type='text/javascript' src='hello.js'></script>
	
  </head>
  
  <body>
   	<input id="user" type="text"/><input type="button" value="您好" onClick="hello()"><div id="result"></div>
  </body>
</html>

 

五、在Index.jsp同目录下新建hello.js文件,内容如下:

function hello(){
	var user = $('user').value;
	Hello.sayHello(user,callback);
}

function callback(msg){
	
	if (typeof window['DWRUtil'] == 'undefined')
    	window.DWRUtil = dwr.util; 
	DWRUtil.setValue('result',msg);
}

 六、部署运行程序,我的可以看到结果。

分享到:
评论
2 楼 bo_hai 2011-02-12  
DWR的工作原理是通过动态把JAVA生成为JavaScript。它的代码就像Ajax魔法一样,你感觉调用就像发生在浏览器端,但是实际上代码调用发生在服务端,DWR负责数据的传递和转换。这种从JAVA到JavaScript的远程调用功能的方式使用DWR用起来有种非常橡RMI或者SOAP的常规RPC机制,而且DWR的优点在于不需要任何的网页浏览器插件就能运行在网页上。
1 楼 bo_hai 2011-02-12  
接下来开始分析dwr的工作原理。

相关推荐

    dwr.jar编写helloworld

    当应用启动时,DWR引擎会处理这些配置并生成必要的JavaScript代码,用户可以通过`/dwr/interface/HelloWorld.js`访问这个文件。 5. **编写HTML和JavaScript**:在HTML页面中,我们需要引入DWR的主脚本文件(如/dwr/...

    DWR之helloworld

    &lt;param name="class" value="com.dwr.HelloWorld"/&gt; &lt;/dwr&gt; ``` 在这个配置中,`creator="new"`表示使用构造函数实例化Java对象,`javascript="Hello"`是JavaScript中的对象名称,`class`参数指定了Java类的全...

    第一个DWR HelloWorld例子(附:详细说明)

    首先,我们需要在服务器端创建一个简单的Java类,例如`HelloWorld.java`,该类包含一个返回字符串的公共方法,如`sayHello()`。这个方法将会被JavaScript调用。 4. **DWR映射** 接下来,我们需要在DWR配置文件...

    dwr_helloWorld

    标题 "dwr_helloWorld" 指向的可能是一个关于Direct Web Remoting (DWR)框架的简单示例,用于在Web应用中实现JavaScript与服务器端Java代码的交互。DWR允许开发者实现实时的、动态的AJAX功能,使得Web界面能够更流畅...

    Dwr helloworld小例子

    &lt;script src="/dwr/interface/HelloWorld.js"&gt; &lt;script src="/dwr/engine.js"&gt; function displayHello() { HelloWorld.sayHello(function(response) { document.getElementById('message').innerHTML = ...

    dwr+demo+helloworld

    在这个例子中,`/dwr/interface/HelloWorld.js`是DWR自动生成的JavaScript接口文件,它包含了`sayHello`方法的引用。`DWRUtil.setValue`将Java方法返回的字符串设置到页面元素的值中。 步骤四:运行与测试 在部署并...

    DWR HELLO WORLD的示例

    &lt;script type="text/javascript" src="/dwr/interface/HelloWorld.js"&gt; &lt;script type="text/javascript" src="/dwr/engine.js"&gt; function displayHello() { HelloWorld.hello(function(response) { document....

    DWR.rar dar实现helloworld

    2. **创建Java类和方法**: 在服务器端,创建一个简单的Java类,例如`HelloWorld.java`,并定义一个返回“Hello, World”的方法。这个方法将会暴露给JavaScript调用。 ```java public class HelloWorld { public ...

    HelloWorld-Dwr

    这个"HelloWorld-Dwr"示例是一个基础教程,展示了如何使用DWR来实现简单的远程方法调用。 首先,我们需要在项目中导入必要的库。DWR的核心库是dwr.jar,还需要commons-logging-1.0.4.jar,这是一个日志处理库,通常...

    dwr的helloworld入门例子

    编写一个简单的Java类,比如`HelloWorld.java`,包含一个返回“Hello, World”的方法。这个方法将被JavaScript调用。 5. **创建JavaScript接口**: DWR自动生成JavaScript接口,使得客户端可以直接调用服务器上的...

    DWR_HelloWorld之痛

    **标题:“DWR_HelloWorld之痛”** 这篇博客文章主要探讨了Direct Web Remoting (DWR)框架在实现一个简单的“HelloWorld”示例时可能遇到的问题和挑战。DWR是一个JavaScript库,允许Web应用在客户端和服务器之间...

    Dwr2的HelloWorld

    在这个例子中,`HelloWorld.js`是由DWR自动生成的,它包含了一个`sayHello`函数,该函数可以调用服务器上的对应方法。当用户点击按钮时,`callServer`函数会被触发,调用`HelloWorld.sayHello`,并在接收到服务器...

    DWR入门教程之HelloWorld

    &lt;script src="/dwr/interface/HelloWorld.js"&gt; &lt;script src="/dwr/engine.js"&gt; window.onload = function() { HelloWorld.sayHello(function(response) { document.getElementById("message").innerHTML = ...

    dwr helloworld

    在上面的代码中,`/dwr/interface/HelloWorld.js`是由DWR自动生成的,包含了调用`sayHello`方法的JavaScript代码。`onload`事件触发`displayMessage`函数,该函数通过DWR调用`sayHello`,并将返回的字符串显示在页面...

    dwr.helloworld:使用 dwr 创建第一个应用程序,HelloWorld

    &lt;script type="text/javascript" src="/dwr/interface/HelloWorld.js"&gt; &lt;script type="text/javascript" src="/dwr/engine.js"&gt; function displayMessage() { HelloWorld.sayHello(function(response) { ...

    dwr3.0的HELLOWORLD创建过程

    ### dwr3.0的HELLOWORLD创建过程详解 #### 一、准备工作:环境搭建与配置 ##### 1. 创建Web工程 - **步骤一**:新建一个Web应用程序工程。 - **步骤二**:导入DWR 3.0的相关jar包。确保包括`dwr-x.x.x.jar`在内的...

    DWR入门 helloworld源码

    DWR的初学者,初次配置时你们一定会遇到很多问题,所以一个很好的helloworld源码,一定对大家有所帮助。MyEclipse7.0测试,绝对运行

    DWR学习笔记-HelloWorld篇

    2. **HelloWorld.java** - 服务器端的Java类,包含了被浏览器调用的方法。 3. **HelloWorldInterface.dwr** - DWR配置文件,声明了可以从JavaScript访问的Java方法。 4. **index.html** - HTML页面,用于展示“Hello...

    DWR的环境搭建与第一个入门程序HelloWorld

    在 `dwr.xml` 文件中,`&lt;create&gt;` 元素定义了一个 JavaScript 对象 `service`,它对应于服务器端的 `helloWorld.Service` 类。这样,你就可以在 JavaScript 中直接调用 `service.sayHello()` 方法,并得到服务器端的...

    Dwr入门操作手册.doc

    《DWR入门操作手册》详述了Direct Web Remoting (DWR)的配置与使用步骤,这是一种让Java服务器端代码能够与JavaScript进行交互的技术。DWR使得开发者可以在浏览器端使用JavaScript调用Java对象的方法,从而实现动态...

Global site tag (gtag.js) - Google Analytics