// Konfigurasi Anotasi DWR ServletPrivate void InitializedWrSerVlet (ServletContext Container) {dwrServlet dwrServlet = dwrservlet baru (); servletregistration.dynamic dynamic = container. "Benar"); Dynamic.setInitparameter ("PollandCometenabled", "True"); Dynamic.setinitparameter ("ActiveVerseAraxenabled", "True"); Dynamic.setinitparameter ("MaxwaitaFterWrite", "1800000"); dinamis.setinitparameter ("Diskon", "1800000"); dinamis. "60000"); Dynamic.setInitParameter ("Kelas", DWrannotationClassSconfiguration ()); Dynamic.AddMapping ("/dwr/*");} // Konfigurasi Kelas Anotasi DWR, Comma String DwrannotationClassSsssssssssConfiguration () {StringBuffer = COMMA = DWRANNOTATIONCLASSSCONDRIFIKAS StringBuffer (); config.append ("com.g360.bean.reconsole.opcost.annualopcoStrequestController"); config.append (","); config.append ("com.g360.bean.security.SessionExpiredparam"); return.上面我的配置是基于注解版的 DWR Servlet 配置 (将 web.xml 里面的 servlet 配置转换为了纯 java 代码配置) , 当然也包括前端和后端直接交互的类 (
com.g360.bean.reconsole.opcost.annualopcostrequestController , com.g360.bean.security.sessionExpiredparam
) 也是使用注解配置的 (dwr 注解配置 , 包括@remoteproxy ,@remotemethod) , 这对于有些注解配置基础的同学来说可能比较容易看懂 , ,
com.g360.bean.security.SessionExpiredParam 的注解配置如下所示 :
@Component ("sessionExpiredParam") @remoteProxy (creator = springcreator.class, scope = scriptscope.application, name = "remote", createParams = @param (name = "beanName", value = "sessionExpiredParam")) Kelas Publik Sesi PublicpiredParam {private {private {private {private {private {private {private lOGGer = LoggerFactory.getLogger (sessionExpiredparam.class); Public Boolean IssesionExpire (String SessionID) {return null == constantCacheservice.getCacheconstant (sessionId); } @Remotemethod public void setEnableDwrupDate (string sessionId) {ScriptSession ScriptSession = WebContextFactory.get (). GetScriptSession (); String jSessionId = ScriptSession.getHttpSessionId (); String dwrSessionId = scriptSession.getId (); Logger.info (string.format ("set jSessionId = [%s], dwrSession = [%s] dorong diaktifkan", jSessionId, dwrSessionId)); ConstantCacheservice.putCacheconstant (constants.push_id+jSessionId, dwrSessionId); }}这就是相当于 dwr.xml 配置文件中如下所示 :
<! DOCTYPE DWR PUBLIK "-// GETAHEAD LIMITED // DTD WEB REMOTING WEB DRECT 3.0 // EN" "http://Gesaread.org/dwr/dwr30.dtd"> <dwr> <lill> <cree creator = "new" javascript = "remote" scope = "application"> <param name = "class" baru "javascript =" remote "scope =" application "> <param name =" class " value = "com.g360.bean.security.SessionExpiredParam"/> </create> </oflow> </dwr>
对于 com.g360.bean.reconsole.opcost.annualopcostrequestController 来说道理一样 , ,
对于使用 dwrservlet 来说要使用纯注解配置 (不使用 dwr.xml) 一定要注意在初始化参数时一定要配置 kelas 这个参数 , 而且这个参数是这个注解类的全路径名 , 有多个的话就使用逗号分隔 , , , , 因为 dwr3.0 好像还不支持包扫描 , 不知道是需要什么配置才能实现还是怎么的 , 如果有哪位仁兄正好看见 , 也正好知道的话请留言麻烦告诉一下 , , 感激不尽啊!欢迎大家有什么不明白的地方或者有什么不对的地方 , , ,