httpsURLConnection.getInputStream () зависает - PullRequest
2 голосов
/ 16 августа 2010

Я пытаюсь построить https-клиент для Android, и мне нужно получить запрос сервлета но когда я использую метод getInputStream, приложение зависает.

Нет ошибки, только когда я вызываю метод.

    String url = "https://.../Servlet";

  try {
   mPushLiteConnection = (HttpsURLConnection) new URL(url).openConnection();
   mPushLiteConnection.setDoOutput(true);
   mPushLiteConnection.setDoInput(true);
   mPushLiteConnection.setRequestMethod("POST");
   mPushLiteConnection.connect();

   subscribe();

   InputStream in = (InputStream)mPushLiteConnection.getInputStream();

   unsubscribe();

   mPushLiteConnection.disconnect();

  } catch (MalformedURLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }

это только для проверки вызова, но он не работает. Есть идеи, почему он зависает и ничего мне не говорит?

метод подписки работает, когда я закомментирую строку с входным потоком, сервер покажет мне все правильно. Я могу попробовать то же самое с Firefox, и он работает, и я вижу запрос.

Я также положил хранилище ключей в TrustManager.

извините за мой английский, я надеюсь, я объясню это.

THX

Ответы [ 2 ]

2 голосов
/ 17 августа 2010

Я думаю, я знаю причину!метод getInputStream () нуждается (почему) в contentLength!В сервлете, к которому я хочу подключиться, отсутствует contentLength, это сервлет push chunked ... он отправляет все фрагменты XML времени без длины.

Итак.*

Теперь я пробую то же соединение с httpClient, я надеюсь, что это сработает ... если нет: я прыгаю за шину;)

1 голос
/ 17 августа 2010

Я использую другой поток и да, я установил сертификат на стороне клиента.

У меня есть второе соединение для загрузки списка из другого сервлета, и оно работает нормально, но мне не нужен InputStream только для негоSAX Parser.Но я не могу использовать SAX Parser для этого сервлета, потому что я не получаю XML, только XML-теги без тега Start Document

Может вы знаете, как игнорировать тег Start Document?Я не уверен, нужно ли мне это для SAX

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...