SERVLET: Http Connection doesn't send data
 
I'm trying to write an application client/server with http protocol,
in JAVA. I need:
- client connects to the server,and after that,
- server continuously sends data to the client (as soon as they can be
obtained by an other server-side resource !! )
Client-side code is:
            HttpURLConnectionis = httpConnection.getInputStream();
            ObjectInputStream ois = new ObjectInputStream(is);
            String toWrite=null;
            do {
                toWrite=(String)ois.readObject();
            }
            while(Thread.currentThread().isAlive());
            is.close();
Server-side code (part of method doGet() of a servlet)  is:
            ObjectOutputStream os= new ObjectOutputStream
(response.getOutputStream());
            Signal sig; // Signal is a Java Class containing String messages
            int i=0;
            while (i<10) {
                sig = obs.getSignal(); //  "obs" is a LinkedBlockingQueue!!!!
                os.writeObject(new String(sig.getValue())); // sig.getValue()
returns String
            }
The problem is that data sent from server arrives to client ALL at the
end of the while-cicle, and not one by one!
Istead, by using a code like this:
            ObjectOutputStream os= new ObjectOutputStream
(response.getOutputStream());
            int j=0;
            while(true){
                os.writeObject(new String("\n SERVER: count"+j));
                j++;
            }
....data arrives one by one!
I made lots of tries, variously modifying the code..and I noticed that
the problem is in using blocking methods
(in fact, the behaviour is same if forcing the current Thread to sleep
- eg Thread.sleep(1000) -).
Where's the problem??