2013-09-20 5 views
0

У меня возникла странная проблема неспособности правильно прочитать ответ сервлета.строка, возвращаемая с сервлета не верна

сервлет на моих данных Пристань веб-сервер возвращает так:

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. Почему это?

ответ

1

Используется для проверки строки.

«==» возвращает true только тогда, когда они являются одним и тем же объектом, я думаю?

Смежные вопросы