2009-07-13 52 views
1

我正在将一些JSP页面的功能转换为GWT。我注意到javax.servlet.http.HttpServletRequest请求是JSP中的一个隐含对象,可以通过调用request.getParameter(“refreshCount”)来获取客户端的刷新计数。我注意到,也可以通过调用getThreadLocalRequest(),为服务实现类(扩展RemoteServiceServlet)中的GWT访问此请求对象,以便对该服务类进行RPC调用。但是,我注意到请求对象没有参数。我怎么可能获得调用客户端的刷新计数(通过HttpServletRequest或其他方式)?获取GWT Web应用服务器端的刷新计数

回答

4

我不认为getParameter(“refreshCount”)是servlet的自动函数。它看起来只是获取查询字符串(URL)中的refreshCount参数的值。最有可能的是,您的代码的其他部分是设置该值。

即使它由Servlet类自动跟踪,也需要维护该客户端的会话状态。 GWT RPC调用没有任何内置的会话功能。所以,如果你想这样做,你有两个选择:

  • 您可以维护一个“刷新计数”在客户端 变量,并将其传递 到您的RP​​C方法作为参数。
  • 您可以将某种会话ID 传递给您的每个RPC方法调用 并跟踪 服务器端的刷新计数。这可能需要 将会话存储在数据库中,或者在某些全局存储器结构中使用 。
+0

这很有道理 – P4ndaman 2009-07-13 18:57:32