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

前端之家收集整理的这篇文章主要介绍了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值(或者是注解形式的)

猜你在找的Ajax相关文章