2010-08-18 4 views
4

Je passe trois jours à découvrir comment je peux me connecter à une servlet push en bloc https et obtenir un flux d'entrée. La connexion avec HttpsURLConnection fonctionne et aussi avec HttpClient mais dans chaque code programmé, quand j'essaye d'obtenir l'InputStream de cette servlet, cette ligne bloque! Pas d'erreur, pas d'exception, rien. Le débogueur s'arrête seulement à cette ligne et attend.Comment obtenir InputStream d'une servlet Push https, chunked?

Je sais qu'il n'y a pas Content-Length dans l'en-tête de la servlet et je sais que c'est la raison pour laquelle la méthode getInputStream de URLConnection bloque.

Mais maintenant je n'ai aucune autre idée. Y at-il quelqu'un qui peut m'aider à obtenir ce InputStream à partir du servlet? Toutes les connexions sont bien avec HttpsURLConnection et HTTPClientseulement obtenir l'InputStream échoue et je ne sais pas pourquoi.

Répondre

1

Le problème est résolu! Échec épique: avant de me connecter au servlet pour obtenir la réponse, je dois me connecter à une autre servlet pour démarrer la session, puis enregistrer le cookie et continuer. J'ai utilisé HttpsURLConnection et il fonctionne très bien ... Fazit: Streaming fonctionne bien sur Android

+0

Mirko - pouvez-vous partager l'extrait de code? J'ai le même problème dans mon code Android, mais je ne vois pas comment démarrer une autre servlet aide le problème génériquement. Je suis à la recherche d'un correctif épique :) – mobibob

+0

Hey mobibob - le problème était, qu'il y avait une autre servlet que je devais commencer en premier. Le problème était seulement sur la Serversite. Avez-vous besoin de vous connecter ou quelque chose d'abord? Vous avez besoin d'une session au début, avant que vous puissiez obtenir le flux. – Informatic0re