[jcifs] Re: Loadbalancing with NTLMServlet/Filter

Eric eglass1 at comcast.net
Sat Mar 20 01:08:50 GMT 2004

He's load balancing the servlet containers (application servers); he's 
got a single web server with multiple WebSphere containers on the back 
end.  The connector on the web server uses the session ID to determine 
which application server the request gets routed to.  We don't currently 
create a session until the NTLM handshake has completed (when we store 
the username etc. in the session).  So what he's seeing is server A 
generates the challenge and sends the Type 2 message, but server B ends 
up getting the Type 3 message (the HTTP keepalive is between the client 
and the web server, but not between the web server and a particular 
application server).

Creating the session at the outset would prevent this (and is probably 
an appropriate measure).


Michael B Allen wrote:
> I don't see what this has to do with load balancing. Please send your
> precise suggested fix to the jcifs mailing list.
> Sylwester Lachiewicz said:
>>With current NtlmServletFilter it's not possible to create application
>>with loadbalancing
>>Our http server  (IBM HTTP with WebSphere plugin) use session cookie to
>>route requests to one of our Application Server. Becouse full NTLM Auth
>>requires 3 resuests/responses it's possible that one request will be
>>received by AppServer1 and second with AppServer2. This creates auth
>>To fix this, in service method, i add line request.getSession() so session
>>will be created and JSESSIONID returned to browser and available to next
>>It's possible to add this to NtlmServlet and NtlmFilter?

More information about the jcifs mailing list