KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to figure out how @Consumes works here. I have a simplified resource that looks like the below, and I only want this resource to consume "application/vnd.myApp+xml". @Path("/app") @Consumes("application/vnd.myApp+xml") @Produces("application/vnd.myApp+xml") public class AppResource { @POST public Response postStuff() { ... } } I have the following testcases:- public class AppResourceTest extends JerseyTest { @Test public void testApp() { // #1: Works fine ClientResponse response = resource().path("app") .accept("application/vnd.myApp+xml") .post(ClientResponse.class); ... // #2: Throws a 415 Unsupported Media Type ClientResponse response = resource().path("app") .accept("application/vnd.myApp+xml") .type("text/plain") .post(ClientResponse.class); ... // #3: Works fine ClientResponse response = resource().path("app") .accept("application/vnd.myApp+xml") .type("application/vnd.myApp+xml") .post(ClientResponse.class); ... } } From the 3 tests above, #2 and #3 work as expected. As for #1, if I don't set the content-type, why doesn't it throw a 415 too?
Tags (comma-separated)
Save Edits
Cancel