// Configuración de anotación DWR ServletPrivate void InitializedWrServlet (ServletContext Container) {dwrservlet dwrservlet = new dwrservlet (); servletregistration.dynamic dynamic = Container.addServlet ("dwrinvoker", dynamicservlet); dynamic.setLeadonstarTup (2); dynamic.setinetinetinyeter ("", "", ", dynamicer. "true");dynamic.setInitParameter("pollAndCometEnabled", "true");dynamic.setInitParameter("activeReverseAjaxEnabled", "true");dynamic.setInitParameter("maxWaitAfterWrite", "1800000");dynamic.setInitParameter("disconnectedTime", "60000"); Dynamic.SetInitParameter ("classes", dwrannotationClassSconFiguration ()); Dynamic.addMapping ("/dwr/*");} // Configurar clases de anotación DWR, COMMA separada DrwannotationClassSconfiguration () {StringBuffer CONFIG = New StringBuffer (); config.append ("com.g360.bean.reconsole.opcost.annualopCoStrequestController"); config.append (","); config.append ("com.g360.bean.security.sessionEppledParam"); return.ToString ();}上面我的配置是基于注解版的 DWR Servlet 配置 (将 Web.xml 里面的 Servlet 配置转换为了纯 java 代码配置) , 当然也包括前端和后端直接交互的类 (
com.g360.bean.reconsole.opcost.annualopCostRequestController , com.g360.bean.security.sessionEppledParam
) 也是使用注解配置的 (DWR 注解配置 , 包括@remoteproxy ,@remotemethod) , 这对于有些注解配置基础的同学来说可能比较容易看懂 对于初次接触的有什么不懂的可以给我留言哦; 对于初次接触的有什么不懂的可以给我留言哦;
com.g360.bean.security.sessionEppiredparam 的注解配置如下所示 :
@Component ("SessionEppiredParam") @remoteProxy (creator = springCreator.class, scope = scriptscope.application, name = "remoto", creatorParams = @param (name = "beanName", valor = "sessionExpiredeSpired Class SessionParedParam {Private Static final logger = loggerfactory.getLogger (sessionParam")). Public Boolean issessionEppire (String SessionId) {return null == constantCacheservice.getCacheConstant (sessionId); } @Remotemethod public void setEnabledWrupDate (String SessionId) {scriptSession scriptSession = webContextFactory.get (). GetScriptSession (); Cadena jSessionId = scriptsession.gethttpsessionId (); String dwrSessionId = scriptsession.getId (); Logger.info (string.format ("set jSessionID = [%s], dwrsession = [%s] Push habilitado", JSessionId, DWRSSIONSIdId)); ConstantCacheservice.putCacheconstant (constants.push_id+jSessionID, dwrSessionID); }}这就是相当于 dwr.xml.
<! Doctype dwr public "-// getAhead Limited // dtd Direct Web Remoting 3.0 // en" "http://getaHead.org/dwr/dwr30.dtd"> <dwr> <soding> <create creator = "nuevo" javascript = "remota" Scope = "Application"> <param name = "clase" value = "com.g360.bean.security.sessionEppiredParam"/> </create> </inging> </dwr>
对于 com.g360.bean.reconsole.opcost.annualopCostRequestController 来说道理一样 这里就不多做说明了; 这里就不多做说明了;
对于使用 DWRSERVLET 来说要使用纯注解配置 (不使用 不使用 dwr.xml) 一定要注意在初始化参数时一定要配置 clases 这个参数 , 而且这个参数是这个注解类的全路径名 , , 这个是特别重要的哦 , 因为 因为 dwr3.0 好像还不支持包扫描 , 不知道是需要什么配置才能实现还是怎么的 如果有哪位仁兄正好看见 , 也正好知道的话请留言麻烦告诉一下 感激不尽啊!欢迎大家有什么不明白的地方或者有什么不对的地方 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言; 请随时留言;