Setting the session as a static member variable is going to cause you
all sorts of concurrency problems, even if it was a non-static member
you'll have the same issues since the same servlet is used to service
every HTTP request. There's really no reason for it.
If your server side is java, everything in GWT is a servlet so there's
really no difference in how GWT works. If using GWT RPC, just extend
RemoteServiceServlet and use getThreadLocalRequest().getSession() as
suggested to retrieve your client's HTTPSession.