在网上找了很多dwr的例子。不是很齐全,补充如下:
需要的jar是dwr.jar。180kb的。不是最新版本。
dwr.xml和web.xml是同级目录
1.index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%
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>My JSP 'index.jsp' starting page</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/MyJsNameForDwr.js"></script>
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/util.js"></script>
<script type="text/javascript">
//var callBackValue = function callBack(data)
function callBackValue(data)
{
DWRUtil.setValue("text", data);
}
function callBackValue2(data)
{
DWRUtil.setValue("objectvalues", data);
}
function getJavaMethodsValues()
{
MyJsNameForDwr.getSomething('a', callBackValue);
var objectValue = {
aString:'x',
bInt:'2',
objectV:{list:'list',string:'string'}
};
MyJsNameForDwr.getSomethingObject(objectValue, callBackValue2);
}
function clearValue()
{
document.getElementById('text').value = "";
}
</script>
</head>
<body>
<h1>
Ajax _DWR
</h1>
<input type="button" name="show" value="调用java方法" onclick="getJavaMethodsValues();">
<input type="button" name="clear" value="清空值" onclick="javascript:clearValue();">
<br>
<input type="text" name="text" id="text">
<input type="text" name="objectvalues" id="objectvalues">
</body>
</html>
2.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">
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>uk.ltd.getahead.dwr.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>
3.dwr.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
<allow>
<convert match="com.dwr.ObjectV" converter="bean">
<param name="list,string"></param>
</convert>
<convert match="com.dwr.ObjectValues" converter="bean">
<param name="aString,bInt,objectV"></param>
</convert>
<create creator="new" javascript="MyJsNameForDwr" scope="application">
<param name="class" value="com.dwr.Class" />
<include method="getSomething" />
<include method="getSomethingObject" />
</create>
</allow>
</dwr>
4.Class.java
package com.dwr;
public class Class
{
/**
* 从前台传递参数到后台方法调用
* @param par
* @return
*/
public boolean getSomething(String par)
{
System.out.println("par == " + par);
String par2 = "b";
System.out.println("par2 == " + par2);
if (par.equals("a")&&par2.equals("b"))
{
return true;
}
else
{
return false;
}
}
/**
* 从前台传递对象到后台
* @param
* @return
*/
public boolean getSomethingObject(ObjectValues obj)
{
System.out.println("aString = " + obj.getaString());
System.out.println("bInt = " + obj.getbInt());
System.out.println("ObjectV = " + obj.getObjectV().getString());
if (obj.getaString().equals("x"))
{
return true;
}
else
{
return false;
}
}
}
5.ObjectValues.java
package com.dwr;
public class ObjectValues
{
/**
* 前台传递到后台的对象包装
*/
private String aString;
private int bInt;
private ObjectV objectV;
public String getaString()
{
return aString;
}
public void setaString(String aString)
{
this.aString = aString;
}
public int getbInt()
{
return bInt;
}
public void setbInt(int bInt)
{
this.bInt = bInt;
}
public ObjectV getObjectV()
{
return objectV;
}
public void setObjectV(ObjectV objectV)
{
this.objectV = objectV;
}
}
6.ObjectV.java
package com.dwr;
import java.util.List;
public class ObjectV
{
private String list;
private String string;
public String getList()
{
return list;
}
public void setList(String list)
{
this.list = list;
}
public String getString()
{
return string;
}
public void setString(String string)
{
this.string = string;
}
}
- dwr.jar (179.3 KB)
- 描述: dwr.jar 180KB 左右的
- 下载次数: 5
分享到:
相关推荐
5. **小demo**:这个项目可能包含了一个简单的示例,演示了如何在J2EE环境中集成DWR,以及如何使用DWR进行后台交互的基本步骤,这对于初学者理解和学习DWR非常有帮助。 6. **标签“dwr”**:这个标签明确了项目的...
Direct Web Remoting (DWR) 是一种在Web应用程序中实现异步JavaScript和Java交互的技术,它允许前端JavaScript代码调用后端服务器上的Java方法,而无需刷新整个网页。这个简单的DWR实例展示了如何利用DWR框架来实现...
在本“DWR与后台异步交互简单例子”中,我们将探讨如何利用DWR来实现前后端的数据通信,提高用户体验。 首先,**DWR的核心理念**是通过提供一套简单的API,使得JavaScript可以直接调用Java方法,仿佛它们都在同一个...
总结来说,"Ext tree 结合dwr 调用后台数据"是前端与后端高效协作的一种实践方式,通过结合使用Ext JS的Tree组件和DWR,我们可以构建出交互性强、响应速度快的Web应用。理解并掌握这种技术,对于提升Web应用的用户...
通过这个DEMO,你可以学习如何在实际项目中运用DWR进行前后台交互,同时理解其与Spring框架的整合,提升Web应用的实时性和用户体验。在学习过程中,遇到问题可以参考博客链接中的内容,或者查找其他相关资料以深入...
《DWR:前台调用后台Java类的"Hello, World!"实践详解》 Direct Web Remoting(DWR)是一个开源的Java库,它允许Web应用程序在浏览器和服务器之间进行实时的、安全的通信,实现JavaScript与Java代码的交互。DWR简化...
在这个特定的项目中,"JAVA AJAX中使用dwr获取后台list并在页面用表格显示",我们将探讨如何结合Direct Web Remoting (DWR) 框架来实现这一功能,同时涉及到二级联动的概念。 DWR是一个开源的Java库,它允许...
dwr源码包 dwr 全称direct web remote 将后台java class 映射为前台的一个js 执行js方法 即可通过ajax 操作后台
在这个项目中,DWR被用来实现在不刷新整个页面的情况下,从后台获取list数据并动态地在表格中展示,同时还有二级联动功能的实现,增加了用户操作的便捷性。下面我们将深入探讨这个项目的各个关键技术点。 首先,DWR...
DWR(Direct Web Remoting)是一个开源的Java框架,它允许Web应用程序轻松地在客户端JavaScript和服务器端Java之间进行交互,实现Ajax(异步JavaScript和XML)功能。DWR简化了复杂的JavaScript和Java之间的通信,...
ExtJS 和 Direct Web Remoting (DWR) 是两种在 Java 后端与前端交互中常用的技术。本项目结合这两种技术,实现了一个简单的用户登录系统,能够验证用户输入的用户名和密码,并显示相关数据。 首先,ExtJS 是一个...
总结起来,这个主题涵盖了使用DWR进行JavaScript与Java后台交互的基本步骤,以及利用DWR的Push功能实现消息精准推送。通过研究提供的Demo,你将能够理解和应用这些技术到自己的项目中,提高Web应用的交互性和实时性...
通过分析和运行这个DEMO,你可以深入理解DWR的工作原理,以及如何在实际项目中利用DWR实现高效、便捷的前后台交互。这将对提升你的Web开发技能,特别是对于需要实时更新和异步交互的应用场景,具有很大的帮助。
在"**DWR推送功能实现实例(前段,后台函数互调)**"中,我们将深入探讨如何利用DWR来实现实时的双向通信。 **DWR的基本原理**: DWR的核心是通过动态生成JavaScript库,使JavaScript可以直接调用Java对象的方法。...
DWR使得动态网页能够与后台服务器进行实时交互,无需刷新整个页面,提高了用户体验。在这个压缩包中,包含的核心组件是“dwr.jar”,这是DWR框架的主要运行时库,以及“dwr.xml”配置文件,它是DWR进行自定义设置的...
描述中提到的“实现前台javascript直接调用后台业务方法和后台方法进行ajax 反转调用前台javascript的方法”,这正是DWR的核心功能。通过DWR,前端JavaScript可以直接调用后台Java服务,就像调用本地函数一样简单。...
在本文中,我们将探讨如何使用DWR实现前台监控并进行后台即时信息推送。 首先,理解DWR的工作原理至关重要。DWR通过在服务器端运行一个Servlet,这个Servlet负责接收JavaScript的请求,执行相应的Java方法,然后将...
5. **交互**:客户端JavaScript代码可以直接调用这些生成的接口,就像调用本地函数一样,DWR会在后台处理HTTP请求和响应。 标签中的"**dwr_j**"和"**dwr_jar**"可能指的是DWR的Java相关资源,而"**dwr.j**"可能是...