curl -H "Content-Type: application/json" --data @si.json 
http://127.0.0.1:2013/mock/127.0.0.1

I also tried with "wget 
http://127.0.0.1:2013/available";<http://127.0.0.1:2013/available> which gave me 
same error code 400.

The above HTTP GET/POST worked with Jetty 9.0 server.

Thanks
zhong


________________________________
From: [email protected] <[email protected]> on 
behalf of Joakim Erdfelt <[email protected]>
Sent: Wednesday, August 12, 2015 4:53 PM
To: JETTY user mailing list
Subject: Re: [jetty-users] HTTP 400 status code returned after Jetty server 
upgraded from 9.0 to 9.2

Can you capture the full POST request line and headers? and post it here?
Would like to see what you are sending.
>From the logs, it appears that something with your specific POST request is 
>tripping up the parser.
Best guess, you have a header without a key. (a HTTP spec violation)



Joakim Erdfelt / [email protected]<mailto:[email protected]>

On Wed, Aug 12, 2015 at 1:08 PM, X Z <[email protected]<mailto:[email protected]>> 
wrote:

Hi,


I have upgraded the embedded Jetty server from 9.0 to latest 9.2 version. The 
HTTP GET/POST requests return 400 code. I also saw this warning log:

WARN  HttpParser:59 - badMessage: java.lang.ArrayIndexOutOfBoundsException: 0 
for HttpChannelOverHttp@2e70eea7{r=0,c=false,a=IDLE,uri=-}

Anyone has got the insight on how to fix the issue?


The detailed debugging messages are:

015-08-12 15:51:55 DEBUG SelectorManager:89 - Queued change 
org.eclipse.jetty.io.SelectorManager$ManagedSelector$Accept@55c4b148

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Selector loop woken up from 
select, 0/0 selected

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Running change 
org.eclipse.jetty.io.SelectorManager$ManagedSelector$Accept@55c4b148

2015-08-12 15:51:55 DEBUG AbstractEndPoint:89 - onOpen 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,-,3/30000,null}{io=0,kio=0,kro=0}

2015-08-12 15:51:55 DEBUG IdleTimeout:89 - 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,-,3/30000,null}{io=0,kio=0,kro=0}
 idle timeout check, elapsed: 3 ms, remaining: 29997 ms

2015-08-12 15:51:55 DEBUG HttpChannel:89 - new 
HttpChannelOverHttp@2e70eea7{r=0,c=false,a=IDLE,uri=-} -> 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,-,29/30000,null}{io=0,kio=0,kro=0},null,HttpChannelState@78442dc2{s=IDLE
 i=true a=null}

2015-08-12 15:51:55 DEBUG HttpConnection:89 - New HTTP Connection 
HttpConnection@45d14aaa{IDLE}

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - onOpen 
HttpConnection@45d14aaa{IDLE}

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - fillInterested 
HttpConnection@45d14aaa{IDLE}

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - IDLE-->FILL_INTERESTED 
HttpConnection@45d14aaa{FILL_INTERESTED}

2015-08-12 15:51:55 DEBUG SelectChannelEndPoint:89 - Local interests updating 0 
-> 1 for 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,R,-,0/30000,HttpConnection}{io=1,kio=0,kro=0}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Queued change 
org.eclipse.jetty.io.SelectChannelEndPoint$1@320dce4f

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Created 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,R,-,1/30000,HttpConnection}{io=1,kio=0,kro=0}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Running change 
org.eclipse.jetty.io.SelectChannelEndPoint$1@320dce4f

2015-08-12 15:51:55 DEBUG SelectChannelEndPoint:89 - Key interests updated 0 -> 
1 on 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,R,-,2/30000,HttpConnection}{io=1,kio=1,kro=0}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Selector loop waiting on select

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Selector loop woken up from 
select, 1/1 selected

2015-08-12 15:51:55 DEBUG SelectChannelEndPoint:89 - Key interests updated 1 -> 
0 on 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,R,-,2/30000,HttpConnection}{io=1,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG SelectChannelEndPoint:89 - Local interests updating 1 
-> 0 for 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,R,-,3/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Queued change 
org.eclipse.jetty.io.SelectChannelEndPoint$1@320dce4f

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - FILL_INTERESTED-->FILLING 
HttpConnection@45d14aaa{FILLING}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Running change 
org.eclipse.jetty.io.SelectChannelEndPoint$1@320dce4f

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Selector loop waiting on select

2015-08-12 15:51:55 DEBUG HttpConnection:89 - HttpConnection@45d14aaa{FILLING} 
onFillable HttpChannelState@78442dc2{s=IDLE i=true a=null}

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - filled 394 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,-,4/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG HttpParser:89 - parseNext s=START 
HeapByteBuffer@2c5c9e4a[p=0,l=394,c=8192,r=394]={<<<POST 
/mock/127.0....d":"127.0.0.1"}>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}

2015-08-12 15:51:55 DEBUG HttpParser:89 - START --> SPACE1

2015-08-12 15:51:55 DEBUG HttpParser:89 - SPACE1 --> URI

2015-08-12 15:51:55 DEBUG HttpParser:89 - URI --> SPACE2

2015-08-12 15:51:55 DEBUG HttpParser:89 - SPACE2 --> REQUEST_VERSION

2015-08-12 15:51:55 DEBUG HttpParser:89 - REQUEST_VERSION --> HEADER

2015-08-12 15:51:55 WARN  HttpParser:59 - badMessage: 
java.lang.ArrayIndexOutOfBoundsException: 0 for 
HttpChannelOverHttp@2e70eea7{r=0,c=false,a=IDLE,uri=-}

2015-08-12 15:51:55 DEBUG HttpParser:105 -

java.lang.ArrayIndexOutOfBoundsException: 0

at org.eclipse.jetty.util.ArrayTernaryTrie.getBest(ArrayTernaryTrie.java:374)

at org.eclipse.jetty.util.ArrayTernaryTrie.getBest(ArrayTernaryTrie.java:357)

at org.eclipse.jetty.http.HttpParser.parseHeaders(HttpParser.java:1047)

at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1257)

at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:250)

at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)

at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)

at 
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)

at java.lang.Thread.run(Thread.java:744)

2015-08-12 15:51:55 DEBUG HttpParser:89 - HEADER --> CLOSED

2015-08-12 15:51:55 DEBUG HttpChannelState:89 - 
HttpChannelState@78442dc2{s=IDLE i=true a=null} handling IDLE

2015-08-12 15:51:55 DEBUG HttpConnection:89 - 
org.eclipse.jetty.server.HttpConnection$SendCallback@4652a2dd[PROCESSING][i=ResponseInfo{HTTP/1.1
 400 
null,0,false},cb=org.eclipse.jetty.server.HttpChannel$CommitCallback@5b427f3c] 
generate: NEED_HEADER (null,null,true)@START

2015-08-12 15:51:55 DEBUG HttpConnection:89 - 
org.eclipse.jetty.server.HttpConnection$SendCallback@4652a2dd[PROCESSING][i=ResponseInfo{HTTP/1.1
 400 
null,0,false},cb=org.eclipse.jetty.server.HttpChannel$CommitCallback@5b427f3c] 
generate: FLUSH ([p=0,l=99,c=8192,r=99],null,true)@COMPLETING

2015-08-12 15:51:55 DEBUG WriteFlusher:89 - write: WriteFlusher@5bd3465a{IDLE} 
[HeapByteBuffer@4e26e633[p=0,l=99,c=8192,r=99]={<<<HTTP/1.1 400 Bad 
....v20150730)\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}]

2015-08-12 15:51:55 DEBUG WriteFlusher:89 - update 
WriteFlusher@5bd3465a{WRITING}:IDLE-->WRITING

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - flushed 99 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,W,10/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG WriteFlusher:89 - update 
WriteFlusher@5bd3465a{IDLE}:WRITING-->IDLE

2015-08-12 15:51:55 DEBUG HttpConnection:89 - 
org.eclipse.jetty.server.HttpConnection$SendCallback@4652a2dd[PROCESSING][i=ResponseInfo{HTTP/1.1
 400 
null,0,false},cb=org.eclipse.jetty.server.HttpChannel$CommitCallback@5b427f3c] 
generate: SHUTDOWN_OUT ([p=99,l=99,c=8192,r=0],null,true)@END

2015-08-12 15:51:55 DEBUG HttpConnection:89 - 
org.eclipse.jetty.server.HttpConnection$SendCallback@4652a2dd[PROCESSING][i=ResponseInfo{HTTP/1.1
 400 
null,0,false},cb=org.eclipse.jetty.server.HttpChannel$CommitCallback@5b427f3c] 
generate: DONE ([p=99,l=99,c=8192,r=0],null,true)@END

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - oshut 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,out,-,-,1/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG HttpChannelState:89 - 
HttpChannelState@78442dc2{s=DISPATCHED i=true a=null} unhandle DISPATCHED

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - filled -1 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,OSHUT,-,-,1/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - ishut 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,Open,in,OSHUT,-,-,2/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG AbstractEndPoint:89 - onClose 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,CLOSED,ISHUT,OSHUT,-,-,2/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG ChannelEndPoint:89 - close 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,CLOSED,ISHUT,OSHUT,-,-,3/30000,HttpConnection}{io=0,kio=0,kro=1}

2015-08-12 15:51:55 DEBUG SelectorManager:89 - Destroyed 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,CLOSED,ISHUT,OSHUT,-,-,3/30000,HttpConnection}{io=0,kio=-1,kro=-1}

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - onClose 
HttpConnection@45d14aaa{FILLING}

2015-08-12 15:51:55 DEBUG AbstractEndPoint:89 - onClose 
SelectChannelEndPoint@57f83f44{/127.0.0.1:60062<http://127.0.0.1:60062><->2013,CLOSED,ISHUT,OSHUT,-,-,4/30000,HttpConnection}{io=0,kio=-1,kro=-1}

2015-08-12 15:51:55 DEBUG HttpParser:89 - atEOF HttpParser{s=CLOSED,0 of 0}

2015-08-12 15:51:55 DEBUG HttpParser:89 - parseNext s=CLOSED 
HeapByteBuffer@4e26e633[p=0,l=0,c=8192,r=0]={<<<>>>HTTP/1.1 400 Bad 
...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}

2015-08-12 15:51:55 DEBUG AbstractConnection:89 - FILLING-->IDLE 
HttpConnection@45d14aaa{IDLE}

_______________________________________________
jetty-users mailing list
[email protected]<mailto:[email protected]>
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

_______________________________________________
jetty-users mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to