For testing purposes I have been trying to get isapi_redirector.dll (from 4.0.3) to work under the Windows .NET Enterprise Server Beta 3 that contains IIS 6.
In am running Tomcat 4.0.4-b2-01. Configuration was not a problem. Requests for static objects appear to work fine. However requests for JSP produced (HTML) content do not. The requested JSP produced page is returned to the browser .. the browser does display the returned page .. however the browser continues to 'spin' the globe .. waiting for the page to be 'complete' .. the body onload handler is never called. In file: C:\Apache\jakarta-tomcat-connectors-4.0.4-b2-src\jk\native\iis\jk_isapi_plug in.c at line 870 .. the code sets the return status for the HttpExtensionProc routine to: HSE_STATUS_SUCCESS_AND_KEEP_CONN In the MS documentation it explcitly states: The application should only return this if it was able to send the correct content-length header to the client. For JSP produced content .. as far as I am aware .. there is no content length header returned. I changed the code at line 870 to always return: HSE_STATUS_SUCCESS and the redirector started working w/o problems .. the browser stopped spinning the globe after the page was received .. the body onload handler was called .. no more problems. It seems as though the isapi redirector .. at least for IIS 6 anyway .. needs to know whether a content length is being returned in the response before it can decide which status code to return. Why this behaviour is different from IIS 5 is not clear. Any comments ? Lenny Karpel PS. I tested this mod against the 3.3 isapi_redirect code .. I could not get any of the projects in the 4.0.4-b2 connectors zip to work properly.