powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Axis 1.1 + httpclient 2
12 сообщений из 12, страница 1 из 1
Axis 1.1 + httpclient 2
    #33606214
Фотография Сергей Ильич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет

Проблема такая: на удаленный сервер идет запрос, и получается ответ за доли секунды. Но сервер настаивает на HTTP1.1+Keep-Alive, и поэтому не закрывает сокет, а ждет что через него пойдут следущие запросы. В свою очередь HttpClient думает что еще не все данные получены (поскольку сокет не закрыт), и ждет секунд 10 прежде чем отвалиться по read timeout. И только после этого он отдает SOAP конверт Axis'у на обработку. Естественно, трата 1000+ процентов времени на неплодотворное ожидание нас не устраивает. Кто - нибудь сталкивался с подобной проблемой?
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33606819
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заинтриговался сейчас этим вопросом и специально оттрассировал обмен. Ничего подобного не происходит. HttpClient 3.0, Axis 1.2.

Это что-то с сервером. Может, он ответ не закрывает? А клиент соответственно и ждет... Сервер-то какой?
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33606820
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То есть Keep-Alive тут точно ни при чем.
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33607566
Фотография Сергей Ильич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, это фича конкретно httpclient 2. Получено "добро" на переход на Axis 1.3+HttpClient3, будем пробовать.
А что такое "не закрывает ответ"
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33608732
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ИльичА что такое "не закрывает ответ"

RFC2616, пункт 4.4. Если сервер не закрывает соединение после отправки ответа, он обязан послать в ответе определенные заголовки (headers), которые позволяют клиенту определить факт окончания ответа.

С HttpClient 2 не работал, возможно, он как-то некорректно обрабатывает эти заголовки, ну, и ждет. Хотя его предшественник (HTTPClient Version 0.3-3), с которым я работал давно и очень плодотворно, такими болезнями не страдал. Возможно, в связке HttpClient 2 / Axis 1.1. что-то не так настроено.
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33608842
Фотография Сергей Ильич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перешли, тепрерь история другая

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
"POST / HTTP/1.1[\r][\n]"
"Content-Type: text/xml; charset=utf-8[\r][\n]"
"SOAPAction: ""[\r][\n]"
"User-Agent: Axis/1.3[\r][\n]"
"Host: www.udaff.com[\r][\n]"
"Transfer-Encoding: chunked[\r][\n]"
"[\r][\n]"
"4f8[\r][\n]"
"<?xml version="1. 0 " encoding="UTF- 8 "?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/[дальше идет запрос]"
"[\r][\n]"
"0"
"[\r][\n]"
"[\r][\n]"

Теперь сервер ругается на 4f8[\r][\n] - пишет что неверное начало у SOAP пакета.
Что такое вообще этот 4f8 ?
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609225
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"4f8[\r][\n]" - что-то явно лишнее. Чудеса у вас какие-то. Комментариев нет.
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609227
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ан нет, не лишнее Это размер чанка. Все правильно. Ну, а в итоге-то что?
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609231
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервер должен увидеть Transfer-Encoding: chunked и понять, что дальше надо читать чанки, каждый из которых начитается с размера чанка в байтах. Последний чанк имеет размер 0, что сообщает серверу о том, что это последний чанк и запрос окончен.

Все выглядит правильно. Похоже, сервер почему-то этого не понимает. Что за сервер у вас все-таки? Выглядит восмсем непонятливым.
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609241
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вообще, батенька, куда вы адресуетесь со своим запросом?... Что за мерзость такая - www.udaff.com? И почему вы решили, что он должен обрабатывать ваши SOAP запросы?
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609269
Фотография Сергей Ильич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М.ГоловановИ вообще, батенька, куда вы адресуетесь со своим запросом?... Что за мерзость такая - www.udaff.com? И почему вы решили, что он должен обрабатывать ваши SOAP запросы? Сервер заказчика я не стал светить
...
Рейтинг: 0 / 0
Axis 1.1 + httpclient 2
    #33609296
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда сами разбирайтесь с этим сервером. Axis все делает правильно и посылает вполне валидный HTTP 1.1 запрос. Нормальный сервер все должен понимать.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Axis 1.1 + httpclient 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]