DWR于spring结合问题——在dwr的service中调用spring生命的bean

在spring和dwr集成的项目中,往往需要再dwr的service中使用spring声明的bean,这是需要修改dwr.xml配置文件

1、普通的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>
  		<!--  <filter class="org.directwebremoting.filter.AuditLogAjaxFilter"></filter>-->
  		<create javascript="SdenRules" creator="new" scope="application">
   			<param name="class" value="com.ifeng.iis.common.dwr.SdenRules"></param>
  		</create>
  	</allow>
</dwr>

这时SednRules 的bean是使用new来声明的,所以这种方式的service无法调用spring声明的bean。

2、使用spring声明的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>
  		<!--  <filter class="org.directwebremoting.filter.AuditLogAjaxFilter"></filter>-->
  		<create javascript="SdenRules" creator="spring" scope="application">
   			<param name="beanName" value="sdenRules"></param>
  		</create>
  	</allow>
</dwr>

creator属性的值可以是new,struts,spring......因为此处是整合spring来做的,所以设置成“spring”;

javascript="DWRUser" 表示实例转换成javascript语言后以DWRUser命名,前台页面可以通过代码(<script type='text/javascript' src='../../dwr/interface/DWRUser.js'></script>)来调用;

param元素的name属性值可以是class,beanName等,此处用beanName,value得值是定义在applicationContext.xml中某个bean的id值(或者是注解形式的)

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...