0
私はSwaggerファイルを生成するためにSpringfoxとSwaggerを使用しています。今は@ModelAttribute
を使用してオブジェクト(NetworkCmd
)から変数を引き出して、スガーガー・ドッグにクエリ・パラメーターとして表示しています。@ModelAttributeの使用中にカスタムドメインオブジェクトが表示されない
私は現在、次のコントローラを持っている:
@RequestMapping(value = "/{product_id}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseHeader()
public ResponseEntity<?> networkResponse(
@RequestHeader HttpHeaders headers,
@PathVariable("product_id")String productId,
@Valid @ModelAttribute NetworkCmd cmd,
BindingResult result)
throws Exception {
...
}
そして、ここではNetworkCmd
のサンプルです:このクラスの変数の
@ItemId
@NotNull(message = "product cannot be null")
@ApiModelProperty(
value = "testing")
private String product_id;
@ApiModelProperty(
value = "key",
private String key;
@ApiModelProperty(
value = "parent")
private Boolean is_parent_id;
@Min(0)
@ApiModelProperty(
value = "radius")
private double radius = 10d;
一つは、カスタムドメインオブジェクトNearby
です。
private Nearby nearby = null;
public Nearby getNearby() {
return nearby;
}
public void setNearby(String nearby) throws ParseException {
this.nearby = Nearby.parse(nearby);
}
それが文字列で受け取り、その文字列を解析し、Nearby
オブジェクトに変換しますので、これは特殊変数の一種です。
私の問題は、このNearby
変数が生成されたスガッガー文書に@ModelAttribute
で表示されないということです。これ以上の情報を提供できてうれしいです。
回答ありがとうございます!残念ながら、これは動作しません。私も試しました: '.directModelSubstitute(Nearby.class、Object.class)' – ahatzz11