private static void readParams(JsonParser jp, ExecutionRequest req) throws Exception {
   JsonToken tok = jp.nextToken(); // move to first entry
   while (tok != JsonToken.END_OBJECT) {
     String key = jp.getCurrentName();
     tok = jp.nextToken();
     if (tok.isScalarValue()) {
       req.setParam(key, jp.getText());
     } else {
       if (jp.getCodec() == null) {
         jp.setCodec(new ObjectMapper());
       }
       req.setParam(key, jp.readValueAsTree());
     }
     tok = jp.nextToken();
   }
 }