У меня возникла странная проблема неспособности правильно прочитать ответ сервлета.строка, возвращаемая с сервлета не верна
сервлет на моих данных Пристань веб-сервер возвращает так:
resp.setStatus(HttpServletResponse.SC_OK);
resp.setContentType("text/plain");
resp.setContentLength(1024);
resp.getWriter().write("DeviceAndNumberAlreadyRegistered");
Мой Android приложение читает ответ, как это:
InputStream is = httpEntity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(
is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while((line=reader.readLine())!=null){
sb.append(line);
}
is.close();
return sb.toString();
Печать значение на LogCat, я могу видеть, что ответ Значение (sb.toString()) совпадает с возвратом моего сервлета («DeviceAndNumberAlreadyRegistered»). Я также проверил, что нет пробелов, используя trim().
Проблема заключается в том, если я пытаюсь сравнить значение в моем андроида приложения в блоке IF, он не проверяет его ИСТИНА т.е. ниже код возвращает ложь:
if(result == "DeviceAndNumberAlreadyRegistered")
Это Безразлично» независимо от того, какой текст возвращает мой сервлет, он просто не проверяет TRUE в блоке IF. Почему это?