我在用dwr+spring的时候遇到这样的问题,调用一个方法得到一个装有对象列表的ArrayList,如下:
getKwdType方法如下:
public ArrayList getKwdType() throws Exception{
ArrayList list = new ArrayList();
StringBuffer sql = new StringBuffer();
sql.append("select KW_TMPL_ID,KW_TMPL_NAME,TMPL_PAGE_NAME from PORTAL_KEYWORD_TMPL");
try{
List nameList = jdbcTemplatePk.queryForList(sql.toString());
if(nameList != null && nameList.size() > 0){
for(int i=0;i<nameList.size();i++){
Map map = (Map)nameList.get(i);
PortalKeywordTmplInfo pkt = new PortalKeywordTmplInfo();
pkt.setKwTmplName((String)map.get("KW_TMPL_NAME"));
pkt.setKwTmplId(((BigDecimal)map.get("KW_TMPL_ID")).intValue());
pkt.setTmplPageName((String)map.get("TMPL_PAGE_NAME"));
list.add(pkt);
}
}
}catch(Exception ex){
log.error(ex.getMessage());
throw ex;
}
return list;
}
js代码如下:
auditApplyServiceImpl.getKwdType({callback:fillSelect,async:false});
function fillSelect(info){
DWRUtil.removeAllOptions("kwTmplId");
DWRUtil.addOptions("kwTmplId",[{kwTmplName:" 不选择 ",kwTmplId:"-1"}],"kwTmplId","kwTmplName");
DWRUtil.addOptions('kwTmplId',info,'kwTmplId','kwTmplName');
for(var i = 0;i<info.length;i++){
alert(info.kwTmplId);
}
}
dwr.xml如下:
-----
<convert converter="bean" match="com.zhongsou.portal.keyword.PortalKeywordTmplInfo"/>
<create creator="spring" javascript="auditApplyServiceImpl">
<param name="beanName" value="auditApplyServiceImpl"/>
<include method="getKwdType"/>
</create>
//这里auditApplyServiceImpl是在spring的bean里配的,
--------
就是从数据库查出数据放入多选框里,我的问题是,我查出数据赋值没问题,但在函数里调用"alert(info.kwTmplId);"为什么提示“undifined”,不是可以直接调用返回对象里的值吗?谢谢答复,想不通
分享到:
相关推荐
Direct Web Remoting (DWR) 是一种在Web应用程序中实现AJAX...以上就是关于"DWR调用带集合返回值的方法"的主要内容,理解并掌握这些要点,可以帮助你更有效地利用DWR进行前后端交互,提高Web应用的用户体验。
以下是对DWR调用及传参方式的详细说明: 1. **无返回值和参数的Java方法调用**: 当Java方法没有返回值且不接受参数时,可以像`callTestMethod1`那样直接调用。在JavaScript中,只需执行`testClass.testMethod1()`...
dwr (Direct Web Remoting) 是一种开源技术,它允许在Web应用程序中实现在客户端JavaScript与服务器端Java之间进行安全的远程方法调用。DWR简化了前后端交互,使得前端可以直接调用后端的Java方法,就像调用本地函数...
多个DWR调用可以打包成一个批处理请求,减少网络通信的开销。 总之,DWR通过对各种类型返回值的支持,使得在JavaScript和Java之间交换数据变得简单而直观。无论是简单的数据类型还是复杂的对象结构,DWR都能够有效...
接下来,在前端JavaScript中,我们可以通过DWR调用上述定义的Java方法,并设置回调函数来接收返回的结果。具体步骤如下: - **初始化变量**:定义一个变量`_data`用于存储回调函数中的数据。 - **设置同步模式**:...
在DWR中,调用一个没有返回值和参数的Java方法非常简单。首先,你需要在`dwr.xml`配置文件中声明你想要暴露的方法,如`testMethod1`。`<create>`标签用于创建一个JavaScript对象,`<include>`标签则指明你要暴露的...
在JavaScript中,你可以创建一个字符串变量,然后将其作为参数传递给DWR调用的方法。服务器端接收到这个字符串后,可以进行相应的处理。 3. **有自定义对象为参数的方法**: DWR的强大之处在于它可以序列化和反...
2. **结果映射**:在Struts2的配置文件中,可以定义结果类型来处理DWR调用后的返回值,比如将返回值渲染到页面上。 3. **拦截器**:利用Struts2的拦截器机制,可以在DWR调用前后添加额外的操作,如日志记录、性能...
6. **调用远程的Cart方法**:详细介绍如何通过DWR调用具体的购物车服务端方法。 7. **演示结果**:提供最终实现效果的截图或视频。 8. **总结**:回顾项目过程,总结经验和教训。 #### 五、附录 **10.1 常见问题**...
通过DWR,你可以直接在JavaScript中调用Java方法并接收这些基本类型的返回值。例如,一个简单的Java方法可能返回一个int值,这个值可以在JavaScript中直接使用,无需额外转换。 2. **实体类**: 在实际开发中,...
调用`testClass.testMethod2()`时,传递一个函数作为参数,如`callBackFortestMethod2`,DWR会自动调用这个回调函数并将返回值传入。 3. **调用有简单参数的JAVA方法** 调用Java方法时可以传递参数。在JavaScript...
DWR(Direct Web Remoting)是一个web远程调用框架,利用这个框架可以让AJAX变得很简单,通过DWR可以在客户端通过JavaScript直接调用服务器的Java方法并返回值给JavaScript,整个过程就好像通过本地客户端调用一样,...
利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).它的最新版本DWR0.6添加许多特性如:支持Dom Trees的自动配置...
同时,DWR的日志系统可以帮助开发者跟踪和诊断问题。 7. **集成其他框架**: DWR可以很好地与其他Java Web框架如Spring、Struts等集成,扩大了其应用范围。例如,你可以在Spring MVC应用中使用DWR,使得前端与后端...
在这个"Dwr源码示例"中,我们将深入探讨如何使用DWR调用Java方法,并处理各种类型的参数和返回值。 首先,DWR的核心功能是提供了一种安全、高效的AJAX(异步JavaScript和XML)框架。它通过创建一个JavaScript到Java...
DWR(Direct Web Remoting)是一个web远程调用框架,利用这个框架可以让AJAX变得很简单,通过DWR可以在客户端通过JavaScript直接调用服务器的Java方法并返回值给JavaScript,整个过程就好像通过本地客户端调用一样,...
DWR简化了Ajax(Asynchronous JavaScript and XML)的实现,使得开发者无需直接编写复杂的XMLHttpRequest对象操作,而是通过简单的JavaScript调用就能执行服务器端的方法。 1. **无返回值和参数的JAVA方法调用** ...
在这个压缩包中,"DWR开发培训.ppt"可能是一个演示文稿,用于教学或研讨会,其中可能包含PPT幻灯片,系统地介绍了DWR的各个方面,可能包括实例演示、最佳实践和常见问题解答。 总的来说,这个DWR教程包提供了一套...
5. **Java代码**:在Java类中定义可被DWR调用的方法,这些方法可以直接操作数据库或其他服务。 6. **JavaScript集成**:在HTML或JavaScript文件中,引入DWR自动生成的接口文件(如TestClass.js),以及DWR的核心...
- **调试支持**:内置的调试工具帮助开发者跟踪和调试DWR调用。 - **批量操作**:通过批处理,可以优化网络传输,减少HTTP请求次数。 - **易于集成**:DWR可以轻松地与各种Web框架(如Spring、Struts等)集成。 **5...