title: java.net.ProtocolException: Unexpected status line: HTTP/1.1 422��Unprocessable Entity
body: <p>I'm making a POST request using Retrofit + Okhttp, and I'm running into the following error:</p>
  
  <pre><code>02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ ---&gt; HTTP POST http://10.0.0.4:3000/api/v1/users/1/posts
  02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ Accept: application/json
  02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ Content-Type: application/json; charset=UTF-8
  02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ Content-Length: 150
  02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ {"description":"test","image_url":"https://s3.amazonaws.com/bucket/xxx-4800-b0e0-fc206f95f158.jpeg","title":"test","price":0.0,"user_id":0}
  02-05 04:45:13.981  15972-16249/com.myapp.android D/Retrofit﹕ ---&gt; END HTTP (150-byte body)
  02-05 04:45:14.001  15972-15972/com.myapp.android W/EGL_genymotion﹕ eglSurfaceAttrib not implemented
  02-05 04:45:14.017  15972-16249/com.myapp.android D/Retrofit﹕ ---- ERROR http://10.0.0.4:3000/api/v1/users/1/posts
  02-05 04:45:14.017  15972-16249/com.myapp.android D/Retrofit﹕ java.net.ProtocolException: Unexpected status line: HTTP/1.1 422��Unprocessable Entity
              at com.squareup.okhttp.internal.http.StatusLine.parse(StatusLine.java:73)
              at com.squareup.okhttp.internal.http.HttpConnection.readResponse(HttpConnection.java:187)
              at com.squareup.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:80)
              at com.squareup.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:791)
              at com.squareup.okhttp.internal.http.HttpEngine.access$200(HttpEngine.java:90)
              at com.squareup.okhttp.internal.http.HttpEngine$NetworkInterceptorChain.proceed(HttpEngine.java:784)
              at com.squareup.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:645)
              at com.squareup.okhttp.Call.getResponse(Call.java:263)
              at com.squareup.okhttp.Call$ApplicationInterceptorChain.proceed(Call.java:219)
              at com.squareup.okhttp.Call.getResponseWithInterceptorChain(Call.java:192)
              at com.squareup.okhttp.Call.execute(Call.java:79)
              at retrofit.client.OkClient.execute(OkClient.java:53)
              at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:326)
              at retrofit.RestAdapter$RestHandler.access$100(RestAdapter.java:220)
              at retrofit.RestAdapter$RestHandler$1.invoke(RestAdapter.java:265)
              at retrofit.RxSupport$2.run(RxSupport.java:55)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
              at java.util.concurrent.FutureTask.run(FutureTask.java:237)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
              at retrofit.Platform$Android$2$1.run(Platform.java:142)
              at java.lang.Thread.run(Thread.java:841)
  02-05 04:45:14.017  15972-16249/com.myapp.android D/Retrofit﹕ ---- END ERROR
  </code></pre>
  
  <p>Using the following libs:</p>
  
  <pre><code>compile 'com.squareup.retrofit:retrofit:1.9.0'
  compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.0'
  compile 'com.squareup.okhttp:okhttp:2.2.0'
  </code></pre>
  
  <p>I'm expecting something like the following to come back (intentionally testing a 422 error):</p>
  
  <pre><code>{
      "title": [
          "is too short (minimum is 6 characters)"
      ]
  }
  </code></pre>
  
  <p>I get the expected result when sending via Postman (<a href="https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?hl=en" rel="nofollow noreferrer">https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?hl=en</a>)</p>
  
  <p><strong>Edit:</strong>
  I'm making the following call in Rails to return this 422 result:</p>
  
  <pre><code>render json: @post.errors.to_json, status: :unprocessable_entity
  </code></pre>
  
  <p><strong>Another Edit:</strong></p>
  
  <p>Here's a screenshot of the request being made via Wireshark. Nothing looks out of the ordinary, but I've also never used the tool before.</p>
  
  <p><img src="https://i.stack.imgur.com/pBqbN.png" alt="Overall"></p>
  
  <p>Here's the appropriate hex.</p>
  
  <p><img src="https://i.stack.imgur.com/Gan9X.png" alt="Hex"></p>