I'm running into a really weird issue where a browser's HTTP requests appear to be discarded by the Simple connector used by a Restlet server.
Server setup:
- Restlet 2.1.2 server
- Restlet-Simple extension (comes with Simple 4.1.21)
- Restlet-crypto extension for digest authentication
The server is serving web pages to browsers and uses javascript's XMLHttpRequest to fetch updates. Some of these XMLHttpRequests don't complete though. The javascript debugger for Chrome shows the "failed" status for these; Firefox's debugger logs a completion time without an HTTP status code and recorded response. A packet sniffer indicates that the problematic requests are actually send to the server, but the server never responds. Debugging shows that these requests never reach our server code.
I have verified the problem with Firefox, Chrome as well as IE. All three browsers (latest versions) run into this problem. Also, each browsers is repeatedly and reproducably having problems with the exact same requests. This set of requests differs between the three browsers though.
What's really weird is that the problem does surface when using the server's machine name (test runs on a LAN), but not when using the machine's IP-address. Switching back from Digest to Basic authentication makes the problem go away too, as does replacing the Simple connector with Jetty.
I'm inclined to switch to Jetty now, but I'd still like to know what's going on. Has anyone seen such behaviour before, or have an idea about what's going wrong here?