Apache CXF выбрасывает исключение конца файла - PullRequest
0 голосов
/ 29 января 2020

У меня есть однопоточное клиентское приложение на основе Apache CXF 3.0.2, Java SE7. Он читает записи, вызывает веб-сервис и спит в al oop.

. При использовании Connection:Close header по запросу клиента Apache CXF пытается использовать постоянное соединение предыдущей итерации, выбрасывает Unexpected end of file from server исключение и затем продолжает l oop.

First Request: success
Second  Request: Unexpected end of file from server
Third Request: success
Fourth Request: Unexpected end of file from server

Альтернативные запросы получают исключение. Я подозреваю, что он пытается повторно использовать постоянное соединение предыдущей успешной итерации, когда он получает неожиданный конец файла с сервера, он удаляет запись соединения. Следующая итерация не видит доступное соединение и, следовательно, пытается создать его с самого начала и проходит успешно. Есть ли какая-либо конфигурация, которую я могу сделать на клиенте, такая, что клиент делает недействительной запись соединения сразу после получения ответа.

Unexpected end of file from server
        at sun.reflect.GeneratedConstructorAccessor33.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1359)
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1343)
        at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
        at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:215)
        at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...