Case class model properties not recognised in swagger-play2 for play 2.5 (Scala)

(Guruprasad Venkatesh) #1

Hi,

In generating swagger specs for Play 2.5 Scala APIs with swagger-play2 version 1.5.3 (https://github.com/swagger-api/swagger-play), we are not able to generate definition properties based on case class model fields. @ApiModel and @ApiModelProperty annotations don’t seem to be getting recognised.

On debugging swagger-play2 i see that during swagger definition generation, case class fields are getting removed because they are interpreted as not visible (private). This happens in jackson-databind that swagger-play2 depends on (in POJOPropertiesCollector.java#_removeUnwantedProperties]). Adding getter methods on case class fields makes it work, but is not a good solution.

Wanted to check if anybody else using swagger-play2 is facing this issue and was able to get the @ApiModel and @ApiModelProperty annotations to work on case classes?

Also, what other frameworks are folks using to generate api documentation for apis written in play framework in Scala? Any alternatives to swagger-play2? Any help is greatly appreciated.

Thanks,
Guru.