`
o_oand0_0
  • 浏览: 20262 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

JSF中配置dwr

阅读更多

本文以实例形式描述在jsf中配置dwr的方法。

 

应用要求:在javascript方法中调用后台Bean的方法和Spring容器中服务的方法。

 

步骤如下:

     1、  JAR包支持

 

dwr.jarjson-lib-2.3-jdk13.jarezmorph-1.0.6.jar

说明:依赖的jar包:commons-collections-XX.jar,版本必须在3.0以上

 

2、web.xml配置DwrServlet和FacesExtensionFilter

 

<!-- dwr begin -->
  <servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>true</param-value>
    </init-param>
    <init-param>
      <param-name>crossDomainSessionSecurity</param-name>
      <param-value>false</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>
  <!--DWR/Faces 过滤器允许你不在JSF的生命周期里调用FacesContext中的Bean。-->
  <filter>
    <filter-name>DwrFacesFilter</filter-name>
    <filter-class>org.directwebremoting.faces.FacesExtensionFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>DwrFacesFilter</filter-name>
    <url-pattern>/dwr/*</url-pattern>
  </filter-mapping>
 <!-- dwr end -->

 

 

 

<!--[if !supportLists]-->   3、  <!--[endif]-->WEB-INF下建立dwr.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">
<dwr>
	<allow>
		<!--调用jsf后台Bean的方法-->
		<create creator="jsf" javascript="BranchMerg">
			<param name="managedBeanName" value="BranchMerg" />
			<param name="class"
				value="cn.ccb.zjtsrmbp.security.web.bb.BranchMerg" />
		</create>
<!--直接调用spring容器内服务的方法-->
<create javascript="billBranch" creator="spring">
			<param name="beanName" value="securityBillBranchNewUCCTarget" />	
		</create>
	</allow>
</dwr>

 

 4、  Service里的方法范例

 

public String getSubBillBranch(String orgNo) {

	List objects=XXX;//可序列化的对象
	JSONArray jsonArray = JSONArray.fromObject(objects);//通过json方式进行序列化
	String jsonStr = jsonArray.toString();
	return jsonStr;
}

 

5、JS方法调用DWR

 

<script type="text/javascript"
		src="<%=request.getContextPath()%>/js/util.js"></script>
	<script type='text/javascript'
		src='<%=request.getContextPath()%>/dwr/engine.js'></script>
	<!---下面的billBranch.js名称对应dwr.xml里的配置--->
	<script type='text/javascript'
		src='<%=request.getContextPath()%>/dwr/interface/billBranch.js'></script>
………………………….

<script >
方法一:js方法里直接获取spring容器内对象,并调用方法
//参数
var tempBranchCode = '<%=request.getSession().getAttribute("logonBranchId")%>';	
//直接使用,并传参,指定回调函数
billBranch.getSubBillBranch(tempBranchCode,invokeFun);
//回调函数接收java方法的json结果,并做解析
function invokeFun(data){
	alert(data);
}
方法二:js直接调用指定后台bean的方法
function go(){
   BillFee.findFirstPage(invokeFun);
 }
 function invokeFun (){
  alert(“over!”);
 }
</script>
分享到:
评论

相关推荐

    dwr配置所需jar包 dwr.jar bsf.jar jdom.jar jsf-api.jar

    dwr.jar bsf.jar jdom.jar jsf-api.jar

    DWR中文文档.pdf

    34 4.2.4 使用Spring配置DWR 35 4.3 DWR与JSF 36 4.3.1 JSF Creator 36 4.3.2 Servlet Filter 36 4.4 DWR与Struts 37 4.4.1 Struts creator 37 4.4.2 开始顺序 37 4.5 DWR与...

    DWR中文文档(PDF)

    ajax框架DWR简介,文件配置,与servlet、spring、jsf、struts等常用框架的整合,DWR函数介绍,范例,附录

    Jetty中文手册

    在JNDI中配置数据源(DataSource) 内嵌Jetty服务器 内嵌Jetty教程 内嵌Jetty的HelloWorld教程 内嵌Jetty视频 优化Jetty 如何配置垃圾收集 如何配置以支持高负载 在Jetty中部署应用 部署管理器 部署绑定 热部署 ...

    Spring in Action(第二版 中文高清版).part2

    16.5 Spring中带有DWR的支持Ajax的应用程序 16.5.1 直接Web远程控制 16.5.2 访问Spring管理的Bean DWR 16.6 小结 附录A 装配Spring A.1 下载Spring A.1.1 研究Spring发布 A.1.2 构建自己的类路径 A.2 把...

    Spring in Action(第二版 中文高清版).part1

    16.5 Spring中带有DWR的支持Ajax的应用程序 16.5.1 直接Web远程控制 16.5.2 访问Spring管理的Bean DWR 16.6 小结 附录A 装配Spring A.1 下载Spring A.1.1 研究Spring发布 A.1.2 构建自己的类路径 A.2 把...

    Spring in Action(第2版)中文版

    16.5spring中带有dwr的支持ajax的应用程序 16.5.1直接web远程控制 16.5.2访问spring管理的beandwr 16.6小结 附录a装配spring a.1下载spring a.1.1研究spring发布 a.1.2构建自己的类路径 a.2把spring添加为一...

    Spring攻略(第二版 中文高清版).part2

    1.2 配置Spring IoC容器中的Bean 4 1.2.1 问题 4 1.2.2 解决方案 4 1.2.3 工作原理 4 1.3 调用构造程序创建Bean 14 1.3.1 问题 14 1.3.2 解决方案 14 1.3.3 工作原理 14 1.4 解决构造程序歧义 17 ...

    Spring攻略(第二版 中文高清版).part1

    1.2 配置Spring IoC容器中的Bean 4 1.2.1 问题 4 1.2.2 解决方案 4 1.2.3 工作原理 4 1.3 调用构造程序创建Bean 14 1.3.1 问题 14 1.3.2 解决方案 14 1.3.3 工作原理 14 1.4 解决构造程序歧义 17 ...

    iuhyiuhkjh908u0980

    PrettyFaces优雅的解决了这个问题,包括诸如功能:网页装载行动,无缝的跟faces的导航整合,动态视图的ID分配和管理参数分析,无需配置,兼容其他JSF框架。P ... by zly06 2009-09-09 回复 (0) 相关博客 ant模板 ...

Global site tag (gtag.js) - Google Analytics