今天写CODE的时候,依靠DWR实现下拉框选择查询并分页显示.在遍历后台传回的LIST时,需要用到其他关联表信息(事实上可以依靠HIBERNATE实现关系查询的,由于本人OSIV配置不合理,OSIV没有设置/dwr/*路径过滤,所有DWR的不能正确解析PO,导致返回值的LIST里面各元素为NULL,不是LIST为NULL),所以再次调用另一个SERVICE从后台传回数据到前台. 但由于异步性,后台数据还未传回,页面元素已被更新.需要第二次SERVICE传回的数据值全部显示为NULL.
查阅资料发现DWR可以通过配置将方法的调用有异步改为同步.
要设置全局同步机制: DWREngine.setAsync(true);
或者设置单次调用同步:
Service.method(params, { callback:function(data) { ... }, async:
false });
-------------------------------------------
第一次写文章.
分享到:
相关推荐
DWR,全称为Direct Web Remoting,是一种Java技术,它允许Web应用程序与服务器端的Java对象进行直接交互,而无需传统的HTTP请求。DWR通过在客户端JavaScript和服务器端Java之间建立一个安全、高效的通信层,使得实时...
通过研究源码,我们可以深入理解DWR的工作原理,了解它如何处理异步请求,如何将Java方法暴露给JavaScript,以及它是如何处理安全性问题的。 1. **DWR架构**: DWR的核心组件包括`Engine`、`Servlet`和`Callee`。`...
2. **AJAX调用**:DWR使用AJAX(Asynchronous JavaScript and XML)技术,允许JavaScript异步地向服务器发送请求。在DWR中,这些请求是通过DWR Engine封装的,用户无需直接操作XML。 3. **反向Ajax**:当服务器有新...
- **拖曳**:利用jQuery的draggable和droppable插件,用户可以拖动节点改变其在树中的位置,DWR同步更新数据库记录。 - **修改**:选中节点并编辑其属性,前端发送更新请求,服务器更新对应数据,然后返回更新后的...
5. **DWR通信**:通过DWR,前端Ajax请求可以直接调用后台Java方法,实现快速的数据同步。 6. **安全性**:Spring的安全模块可以提供认证和授权机制,保护拍卖系统免受非法访问和攻击。 总结来说,这个拍卖系统利用...
传统的Web应用通常采用同步交互模式。在这种模式下,用户发起一个请求,服务器处理该请求后返回一个全新的HTML页面。这种方式的问题在于,用户需要等待服务器处理请求并返回结果,期间用户界面是不可用的,导致用户...
2. 数据库连接与安全:为避免SQL注入,应使用`PreparedStatement`来执行包含用户输入的SQL查询,而不是`Statement`。关闭数据库资源如`ResultSet`,`Statement`和`Connection`时,推荐使用try-with-resources语句以...