Our application creates 2 HttpConnections (on separate threads).
One sends data to a server, the other polls for data to be received.

Under normal usage our application is started, the user chooses to use the Internet Access Point to connect to and everything works as expected.

The problem we have is that if the user starts our app against an internet access point then puts it in the background and runs a different application that uses a another access point (ie the WAP browser with a WAP access point), the following can occur:

1. Sometimes our app can still send and receive data.
2. Sometimes our app is blocked from sending and receiving data but recovers when the 2nd app is closed.
3. Sometimes our app does not recover and cannot send or receive data.
4. If we run another application using the original access point, our app can sometimes recover and begin to send and receive again.

The poll is carried out as follows:
try {
  connection = (HttpConnection) Connnector.open(url, Connector.READ_WRITE, true);
  connection.setRequestProperty("Connection", "close");
  // set the content length header & check response codes...
  // if length <= 0 return null otherwise read message from the connection
} catch (IOException ioe) {
  // Alert the user that connection is down, try and reconnect
In scenario 3. described above we do not appear to get any exceptions thrown on a real device, so we cant alert the user that they are not connected to the server anymore.

Other failures (such as killing our server, and switching the phone to flight mode do trigger the IOException as expected).

We've tested the issue on a nokia 6630 and E70 and the behaviour is slightly different between the 2, on the E70 both the send connection and poll receive connection become blocked after a different application uses an access point, whereas the 6630 will often allow the send requests to be made, whilst the poll gets blocked.

Any suggestions would be greatly appreciated.