Форум программистов, компьютерный форум, киберфорум
Java: Сети
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
19 / 8 / 2
Регистрация: 28.12.2012
Сообщений: 32
1

Разный прием одной информации

06.02.2013, 08:47. Просмотров 1224. Ответов 3
Метки нет (Все метки)

Добрый день!
Пишу код на Java работающий с WCF сервисом. Передача идет через пост запросы в формате Json. Проблема в том, что одни и те же данные клиент на Java принимает по разному. Иногда принимает полностью строку, а иногда неполную строку и какие то символы в конце.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//Задаем хост сервера
                HttpPost request=new HttpPost(arg0[0]+"/"+arg0[2]);
                //Задаем заголовки
                BuildHeaders(request, false, "password");
                Gson gson=new Gson();
                Globals.SimpleMessage Message=new Globals().new SimpleMessage(arg0[1]);
                StringEntity entity=new StringEntity("{\"message\":"+gson.toJson(Message)+"}", "utf-8");
                //Добавляем тело в запрос
                request.setEntity(entity);
                    //Создаем клиент
                DefaultHttpClient client=BuildDefaultHttpClient();
                    //  Отправка запроса на сервер
                HttpResponse response=client.execute(request);
                byte[] buffer=new byte[(int)response.getEntity().getContentLength()];
                response.getEntity().getContent().read(buffer);
                //Получение ответа с сервера
                String response_string=new String(buffer);
response_string - иногда содержит строку,например [ID:1,Name:"Sergey"], а иногда [ID:1,Name:"S□□□□□□.
Подскажите в чем дело может быть....
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2013, 08:47
Ответы с готовыми решениями:

Разный шрифт в одной строке
Как Реализовать разный размер шрифта в одной строке. Например в подписи текста для кнопки?

Разный цвет шрифта в одной строке
Подскажите как программно на одной и той же строке в Memo или Rich Edit сделать штифт разным...

Использование одной переменной в разный цыклах
Здравствуйте. Подскажите какие могут быть последствия использования одной переменной в разных...

Хранение информации о сотрудниках, прием и увольнение с работы
Разработать программу с помощью объектно ориентированного программирования, которая производит...

3
Эксперт Java
4069 / 3803 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
06.02.2013, 09:02 2
Какую библиотеку используете для http запросов?
Посмотрите другие методы у HttpResponse response - возможно там метод, получающий ответ полностью.
0
19 / 8 / 2
Регистрация: 28.12.2012
Сообщений: 32
06.02.2013, 09:10  [ТС] 3
Библиотека org.apache.http.
Я сейчас посмотрел в entity ответа 1964 байта, а когда переводишь байты в строку то строка имеет длину 1265. Не знаю почему так. Пробовал new String(byte[]),new String(byte[],offset,byteCount),new String(byte[],offset,byteCount,CharSet). Ничего не помогает
0
Эксперт Java
4069 / 3803 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
06.02.2013, 09:30 4
После получения Entity, нужно его полностью дочитать.
пример отсюда - http://hc.apache.org/httpcompo... start.html
Java
1
2
3
4
    HttpEntity entity = response.getEntity();
    // do something useful with the response body
    // and ensure it is fully consumed
    EntityUtils.consume(entity);
PS. Да, и не используйте просто new String(byte[]), обязательно указывайте кодировку.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2013, 09:30

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Существенно разный размер реплик одной базы
Здравствуйте все! Возникла проблема: на центральном сервере база 5Г, занято 57%, документов 1600,...

Разный контент на одной форме (Подобие установщика)
Вы видели при установке винды есть меню при выборе разделов для установки? Мне нужно сделать все...

Показывать разный контент в одной и той же форме
Здравствуйте! Я новичок в работе с Visuol Basic! подскажите мне пожалуйста как сделать так чтобы...

Delphi+Excel. Разный формат текста в одной ячейки
Всем доброго времени суток! Мне нужно через Delphi программно в Excel вписать в ячейку текст с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.