diff --git a/play-2.6/swagger-play2/app/play/modules/swagger/PlayReader.java b/play-2.6/swagger-play2/app/play/modules/swagger/PlayReader.java index dc02edd..cc0623c 100644 --- a/play-2.6/swagger-play2/app/play/modules/swagger/PlayReader.java +++ b/play-2.6/swagger-play2/app/play/modules/swagger/PlayReader.java @@ -396,6 +396,9 @@ protected io.swagger.models.parameters.Parameter readImplicitParam(ApiImplicitPa type = typeFromString(param.dataType(), cls); } + if(param.dataTypeClass() != Void.class) { + type = param.dataTypeClass(); + } Parameter result = ParameterProcessor.applyAnnotations(getSwagger(), p, type == null ? String.class : type, Collections.singletonList(param)); if (result instanceof AbstractSerializableParameter && type != null) { diff --git a/play-2.6/swagger-play2/test/testdata/CatController.scala b/play-2.6/swagger-play2/test/testdata/CatController.scala index 0f7b218..41f30b2 100644 --- a/play-2.6/swagger-play2/test/testdata/CatController.scala +++ b/play-2.6/swagger-play2/test/testdata/CatController.scala @@ -13,7 +13,7 @@ class CatController extends Controller { consumes = "", protocols = "") @ApiImplicitParams(Array( - new ApiImplicitParam(name = "cat", value = "Cat object to add", required = true, dataType = "testdata.Cat", paramType = "body"))) + new ApiImplicitParam(name = "cat", value = "Cat object to add", required = true, dataTypeClass = classOf[testdata.Cat], paramType = "body"))) def add1 = Action { request => Ok("test case") }