[ 
https://issues.apache.org/jira/browse/HTTPASYNC-164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17291313#comment-17291313
 ] 

Nguyen Ky Thanh commented on HTTPASYNC-164:
-------------------------------------------

{code:java}
// code placeholder
ParseExceptionInvalid protocol version; error at offset 0: 
<[0x2e][0x2f][0x30][0x31][0x32][0x33][0x34][0x35][0x36][0x37][0x38][0x39][0x3a][0x3b]€[0x3d][0x3e][0x3f][0x40][0x41][0x42][0x43][0x44][0x45]ÿÿÿ[0x49][0x4a][0x4b][0x4c][0x4d][0x4e][0x4f][0x50][0x51]ÿ[0x54][0x55][0x56][0x57][0x58][0x59][0x5a][0x5b][0x5c][0x5d][0x5e][0x5f][0x60][0x61][0x62][0x63][0x64][0x65][0x66]>org.apache.hc.core5.http.message.BasicLineParser
 in parseProtocolVersion at line 
109org.apache.hc.core5.http.message.BasicLineParser in parseStatusLine at line 
180org.apache.hc.core5.http.impl.nio.DefaultHttpResponseParser in createMessage 
at line 83org.apache.hc.core5.http.impl.nio.DefaultHttpResponseParser in 
createMessage at line 44org.apache.hc.core5.http.impl.nio.AbstractMessageParser 
in parseHeadLine at line 
115org.apache.hc.core5.http.impl.nio.AbstractMessageParser in parse at line 
167org.apache.hc.core5.http.impl.nio.AbstractMessageParser in parse at line 
51org.apache.hc.core5.http.impl.nio.AbstractHttp1StreamDuplexer in 
parseMessageHead at line 
238org.apache.hc.core5.http.impl.nio.AbstractHttp1StreamDuplexer in onInput at 
line 267org.apache.hc.core5.http.impl.nio.AbstractHttp1IOEventHandler in 
inputReady at line 
64org.apache.hc.core5.http.impl.nio.ClientHttp1IOEventHandler in inputReady at 
line 39org.apache.hc.core5.reactor.ssl.SSLIOSession in decryptData at line 
536org.apache.hc.core5.reactor.ssl.SSLIOSession in access$400 at line 
71org.apache.hc.core5.reactor.ssl.SSLIOSession$1 in inputReady at line 
176org.apache.hc.core5.reactor.InternalDataChannel in onIOEvent at line 
124org.apache.hc.core5.reactor.InternalChannel in handleIOEvent at line 
51org.apache.hc.core5.reactor.SingleCoreIOReactor in processEvents at line 
179org.apache.hc.core5.reactor.SingleCoreIOReactor in doExecute at line 
128org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor in execute at line 
85org.apache.hc.core5.reactor.IOReactorWorker
{code}

> ParseException: Invalid protocol version when using proxy settings
> ------------------------------------------------------------------
>
>                 Key: HTTPASYNC-164
>                 URL: https://issues.apache.org/jira/browse/HTTPASYNC-164
>             Project: HttpComponents HttpAsyncClient
>          Issue Type: Bug
>            Reporter: Carlos
>            Priority: Major
>
> Hi,
> We have upgraded our Apache HTTP Client library from version 4.1.4 to 5.0.3. 
> We are using the async API. Overall, it's working very good. The reason for 
> the upgrade is the need of using the new retry feature. However, we have an 
> endpoint that requires accessing through a proxy. The problem with this one 
> is that it's returning the following error:
> {code:java}
> org.apache.hc.core5.http.ParseException: Invalid protocol version; error at 
> offset 0: 
> <[0x2e][0x2f][0x30][0x31][0x32][0x33][0x34][0x35][0x36][0x37][0x38][0x39][0x3a][0x3b][0x3c][0x3d][0x3e]>
>  
>       at 
> org.apache.hc.core5.http.message.BasicLineParser.parseProtocolVersion(BasicLineParser.java:109)
>  
>       at 
> org.apache.hc.core5.http.message.BasicLineParser.parseStatusLine(BasicLineParser.java:180)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.DefaultHttpResponseParser.createMessage(DefaultHttpResponseParser.java:83)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.DefaultHttpResponseParser.createMessage(DefaultHttpResponseParser.java:44)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractMessageParser.parseHeadLine(AbstractMessageParser.java:115)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractMessageParser.parse(AbstractMessageParser.java:167)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractMessageParser.parse(AbstractMessageParser.java:51)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractHttp1StreamDuplexer.parseMessageHead(AbstractHttp1StreamDuplexer.java:238)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractHttp1StreamDuplexer.onInput(AbstractHttp1StreamDuplexer.java:267)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.AbstractHttp1IOEventHandler.inputReady(AbstractHttp1IOEventHandler.java:64)
>  
>       at 
> org.apache.hc.core5.http.impl.nio.ClientHttp1IOEventHandler.inputReady(ClientHttp1IOEventHandler.java:39)
>  
>       at 
> org.apache.hc.core5.reactor.ssl.SSLIOSession.decryptData(SSLIOSession.java:536)
>  
>       at 
> org.apache.hc.core5.reactor.ssl.SSLIOSession.access$400(SSLIOSession.java:71) 
>       at 
> org.apache.hc.core5.reactor.ssl.SSLIOSession$1.inputReady(SSLIOSession.java:176)
>  
>       at 
> org.apache.hc.core5.reactor.InternalDataChannel.onIOEvent(InternalDataChannel.java:124)
>  
>       at 
> org.apache.hc.core5.reactor.InternalChannel.handleIOEvent(InternalChannel.java:51)
>  
>       at 
> org.apache.hc.core5.reactor.SingleCoreIOReactor.processEvents(SingleCoreIOReactor.java:179)
>  
>       at 
> org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:128)
>  
>       at 
> org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
>  
>       at 
> org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44) 
>       at java.base/java.lang.Thread.run(Thread.java:834)
> {code}
> Same invocation with the previous library version was perfectly. We've tried 
> a few options, but all of them result in the same exception being thrown:
> {code:java}
>         // Option 1
>         return 
> HttpAsyncClientBuilder.create().setProxy(HttpHost.create("http://127.0.0.1:8080";)).build();
>         
>         // Option 2
>         final ProxySelector proxySelector = ProxySelector.of(new 
> InetSocketAddress("127.0.0.1", 8080));
>         final HttpRoutePlanner routePlanner = new 
> SystemDefaultRoutePlanner(proxySelector);
>         
>         return 
> HttpAsyncClientBuilder.create().setRoutePlanner(routePlanner).build();
>         // Option 3
>         return 
> HttpAsyncClients.customHttp2().setRoutePlanner(routePlanner).build();
>         // Option 4
>         return 
> HttpAsyncClients.custom().setProxy(HttpHost.create("http://127.0.0.1:8080";)).build();
>         
>         // Option 5
>         return 
> HttpAsyncClientBuilder.create().setProxy(HttpHost.create("http://127.0.0.1:8080";)).build();
> {code}
>  
> Is there a way to solve this issue? Any way to restore the previous version 
> configuration?
> Thank you!



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to