import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

public class JXI_Sample {

    @GET
    @Path("/stuff")
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON) 
    public Response loadStuff(Stuff s) {
        return Response.ok().build();
    }
    
    @POST
    @Path("/stuffit/{blub}")
    public Response stufStuff(@PathParam("blub") String blub, Stuff s) {
        return Response.ok().build();
    }
    
    @GET
    @Path("/stuffy")
    @Produces(MediaType.APPLICATION_JSON) 
    public Response fpFine(Stuff s) {
        return Response.ok().build();
    }
    
    @GET
    @Path("/stuffNotRight/{good}")
    public Response mismatchParm(@PathParam("bad") String bad) {
        return Response.ok().build();
    }
    
    @POST
    @Path("/stuffok/{blub}")
    public Response fpStuff(@PathParam("blub") String blub, String body) {
        return Response.ok().build();
    }
    
    @POST
    @Path("/stuffyup/{blub}")
    @Consumes(MediaType.APPLICATION_JSON)
    public Response fpStuff2(@PathParam("blub") String blub, Stuff body) {
        return Response.ok().build();
    }
    
    static class Stuff {
    }
}

@@ -1,24 +1,53 @@
+import java.io.InputStream;%0A%0A
 import javax.ws.rs.Consu
@@ -100,16 +100,40 @@
 s.POST;%0A
+import javax.ws.rs.PUT;%0A
 import j
@@ -204,24 +204,57 @@
 s.Produces;%0A
+import javax.ws.rs.core.Context;%0A
 import javax
@@ -733,247 +733,394 @@
 tuff
-y%22)%0A    @Produces(MediaType.APPLICATION_JSON) %0A    public Response fpFine(Stuff s) %7B%0A        return Response.ok().build();%0A    %7D%0A    %0A    @GET%0A    @Path(%22/stuffNotRight/%7Bgood%7D%22)%0A    public Response mismatchParm(@PathParam(%22bad%22) String bad
+NotRight/%7Bgood%7D%22)%0A    public Response mismatchParm(@PathParam(%22bad%22) String bad) %7B%0A        return Response.ok().build();%0A    %7D%0A    %0A    @PUT%0A    @Path(%22/stuffMe%22)%0A    public Response stuffWithBadContext(@Context InputStream is) %7B%0A        return Response.ok().build();%0A    %7D%0A    %0A    @GET%0A    @Path(%22/stuffy%22)%0A    @Produces(MediaType.APPLICATION_JSON) %0A    public Response fpFine(Stuff s
 ) %7B%0A
@@ -1155,32 +1155,33 @@
 .build();%0A    %7D%0A
+%0A
     %0A    @POST%0A 

add pattern for bad @Context parm type