2015-04-28 73 views
0

我們使用揚鞭2.x和SpringFox 2.0備用LOCALDATE標籤記錄與Spring MVC中創建了REST服務。揚鞭模型模式響應:SpringFox

我們有一個屬性列表< LOCALDATE的>日期的REST響應。

在響應的模型模式,對於日期標籤被顯示爲「LOCALDATE」。這不是意圖:我們想要'日期'或'yyyy-MM-dd'代替。

我們有這個類:

public class SayHelloResponse { 

    private List<LocalDate> dates; 

    private String message; 

    public SayHelloResponse(String message, LocalDate... dates) { 
     this.message = message; 
     this.dates = ImmutableList.copyOf(dates); 
    } 

    public List<LocalDate> getDates() { 
     return dates; 
    } 

    public String getMessage() { 
     return message; 
    } 
} 

導致這個模型模式:

{ 
    "dates": [ 
    "LocalDate" 
    ], 
    "message": "string" 
} 

在模型架構,我想有LOCALDATE的爲 '' 或「YYYY-MM -dd」。這樣做的方式似乎與com.wordnik.swagger.annotations.ApiModelProperty,但這並沒有任何影響(它被拿起,因爲當我添加@ApiModelProperty(隱藏= true)它隱藏)。

我創建了一個sample rest project顯示的問題。

任何想法如何在Swagger模型模式中將LocalDate更改爲'date'或'yyyy-MM-dd'?

+0

不知道它是一個招搖的UI問題,或者如果它只是springfox犯規支持默認的事實。如果沒有一個,我會說爲此創建一個問題,以便我們可以提供一個默認值。 –

回答

0

有一個在案卷對象的方法,以取代模型稱爲directModelSubstitute()。您可以使用這樣的替換,以LOCALDATE Date對象:

Docket#directModelSubstitute(LocalDate.class, Date.class)

與它唯一的問題是我發現的是,你不能改變的日期格式。

A/Q section in the official Springfox documentation,特別是質疑「我們如何使用Java 8種esply。LocalDateTime?