Currently I have registered a Gson Provider which correctly is used whenever my request is consuming or producing json.
The problem is that I have a request that needs the Post data as either a byte[], InputStream, Reader, or String.
The reason I need the "raw" data is that I have some third party code where it expects to do its own deserialization.
No matter which of these four types I specify my Post method to expect, the GsonReader will complain and rightly so.
Expected a string but was BEGIN_OBJECT
Depending on the type there is a different error, but it all boils down to the fact that I don't want this Provider/MessageBodyReader to run.
Also, I don't have control of the Accept and Content-type headers of the Posted data. They will be application/json.