具体配置参考前几个DWR DEMO
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ page import = "com.dwr.UserBean" %>
<%
String path = request.getContextPath();
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'dwrTest2.jsp' starting page</title>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript" src="<%=path %>/dwrjs/util.js"></script>
<script type="text/javascript" src="<%=path %>/dwrjs/engine.js"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/dwr/interface/testDwrService.js"></script>
<script type="text/javascript">
function showSelect(){
// test 定义一个对象
var data ={id:3,userName:DWRUtil.getValue('uid'),psw:DWRUtil.getValue('pid')};
//var data ={id:3,userName:"yonghuming",psw:"mima"};
alert(data);
testDwrService.passObject(data,function(result){
alert(result);
});
}
</script>
</head>
<body style="margin-left: 300px">
This is my JSP page. <br>
<form action="#" method="post" name="frm">
<input type="button" value="Button" onclick="showSelect()"/>
<input type="hidden" id="uid" value="用户名">
<input type="hidden" id="pid" value="密码">
</form>
</body>
</html>
// dwr 传递对象 passObject
public String passObject(UserBean user){
System.out.println(user.getId()+"" +
" "+user.getPsw()+" "+user.getUserName());
return "passObject";
}
<allow>
<create creator="new" javascript="testDwrService">
<param name="class" value="com.dwr.TestDwrService2" />
<include method="passObject" />
</create>
<convert converter="bean" match="com.dwr.UserBean">
<param name="include" value="id,userName,psw"></param>
</convert>
</allow>
分享到:
相关推荐
这通常涉及到创建一个DWR的实例,然后调用相应的方法,传递参数,并处理返回的结果。在这个DEMO中,可能会有示例代码展示如何获取和显示由服务器返回的集合内容。 4. **展示数据**:DWR返回的数据会被JavaScript...
- **远程调用**:JavaScript调用DWR提供的函数,传递参数,请求服务器端方法。 - **执行与响应**:DWR Servlet接收到请求,执行相应的Java方法,并将结果返回给JavaScript。 - **更新页面**:JavaScript收到响应...
2. **自动类型转换**:DWR自动处理JavaScript和Java对象之间的类型转换,使得在客户端和服务器端之间传递数据变得简单。 3. **安全机制**:DWR提供了一套安全机制,如白名单、签名等,确保只有授权的函数可以被调用...
- `<param>`:定义创建对象时传递的参数。 2. **示例解释**: - 第一个`<create>`元素允许客户端创建`java.util.Date`对象,并将其命名为`JDate`。 - 第二个`<create>`元素允许创建自定义的Java Bean,并在...
DWR的DEMO通常包括以下步骤: 1. **服务器端逻辑代码**:编写涵盖DWR核心功能的Java类,遵循Java Bean规范,以便于DWR自动识别和调用。 2. **配置文件**:配置DWR允许的Java方法调用,以及数据转换规则。 3. **Web端...
5. **通信机制**:当用户点击按钮触发`update()`函数时,`sayHello`方法被调用,传递参数并附带一个回调函数。DWR引擎使用JSON或其他序列化格式将调用封装成HTTP请求发送到服务器。 6. **服务器处理**:服务器端的...
DWR通过将回调函数作为参数传递给Java方法,并在方法执行完成后自动调用回调,从而实现了异步通信。 要开始使用DWR,首先需要下载DWR的jar包。可以从官方网站http://getahead.org/dwr获取最新版本的dwr.jar文件,...
5. **传入参数**:DWR支持多种类型的参数传递,包括基本类型、复杂对象甚至是数组。在这个demo中,我们可能看到如何将前端的输入数据作为参数传递给后端的Java方法。 6. **处理返回的list集合**:当后端方法执行...
2. **后台控制器(DWRServlet)**:初始化DWR配置参数,处理业务组件调用服务。 3. **组件执行器**:执行后台组件的调用请求。 4. **数据转换器**:负责Java对象和JavaScript对象之间的转换。 **6. DWR的优势** - ...
在开发过程中,DWR的调试工具(如DWR逆向工程)可以帮助开发者快速了解哪些Java方法可以被前端调用,以及它们的参数和返回类型。此外,DWR还提供了错误处理机制,可以在出现问题时提供反馈。 总的来说,DWR是一种...
- 组合对象的输出,包括复杂数据结构的传递。 - 回调函数的两种写法及其应用场景,用于处理后台执行的结果并通知前端。 **DWR实现机制:** 1. **JS引擎(Engine.js)**:负责拦截后台组件请求,统一客户端入口,...
Engine.js负责将JS参数重新打包,根据浏览器特性选择最优的数据传输方式,并处理服务器返回的结果,通过回调函数将数据传递给客户端。 2. **后台控制器(DWRServlet)**:这个Servlet在服务器端运行,负责初始化DWR...
它会重新打包JS参数,根据浏览器环境选择最佳的数据提交策略,并处理后台响应,通过回调函数将结果传递给客户端。 2. **后台控制器(DWRServlet)**:在Servlet加载时初始化DWR配置,处理来自前端的调用请求,执行...
此外,DWR还支持Map和组合对象的传递。 ### DWR的优势 DWR通过以下方式提升开发效率和用户体验: 1. **分离表现层和业务逻辑**:消除Scriptlets,使HTML页面更纯粹,减少网络带宽消耗。 2. **无刷新通信**:页面...
通过一个Demo,我们可以了解到DWR的配置过程和基本使用方法,包括服务器端代码编写、DWR配置文件的设置以及客户端JavaScript代码的编写。这个过程涵盖了DWR开发的关键步骤,帮助开发者更好地理解和应用DWR技术。 ...
这种方式创建的对象可以作为参数传递,使你可以自定义函数的行为。 4. **DOM元素访问**: - `var name = dwr.util.getValue("demoName")` 使用DWR的工具方法获取元素值。 - `var name2 = $(“demoName”).value;`...