微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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值(或者是注解形式的)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐