2010年3月11日 星期四

Direct Web Remoting(DWR) - Reverse Ajax

1. 要使用DWR Reverse Ajax需先指定参数activeReverseAjaxEnabled为true。

<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>activeReverseAjaxEnabled</param-name>
     <param-value>true</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
 </servlet>

2. 在要使用DWR Reverse Ajax的页面(reverseAjax.jsp)加入以下设定。

<!-- DWR相关的Javascript -->
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
<!-- 页面载入时,即建立ReverseAjax连线 -->
<body onload="dwr.engine.setActiveReverseAjax(true);">
<!-- 从Server push回来的内容 -->
<span id="show"></span>


3. 触发要回传资料给Client端的Servlet。

ServerContext wctx = ServerContextFactory.get(this.getServletContext());
//取得要触发的页面
Collection sessions = wctx.getScriptSessionsByPage("/reverseAjax.jsp");
Util utilAll = new Util(sessions);
//设定回传的内容,并指定放到DOM的哪个id内
utilAll.setValue("show", "这是Server回传的资料");


沒有留言:

張貼留言