我有一个WidgetDto,我用swagger UI注释进行了注释.最终的响应包WidgetDtos的列表,元数据层(每21页这个 REST风格的最佳实践文件).例如:
{
"data" : [
{
"id" : 1234,
"prop1" : "val1"
...
},
{
"id" : 5678,
"prop1" : "val2"
...
},
...
]
}
Run Code Online (Sandbox Code Playgroud)
我的java代码如下所示:
@GET
@Produces(MediaType.APPLICATION_JSON)
@ApiOperation(
value = "Get all widgets.",
response = WidgetDto.class
)
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Returns the list of widgets.")
})
public Response getWidgets() {
List<WidgetDto> widgets;
...
Map<String, Object> responseBody = new HashMap<>();
responseBody.put("data", widgets);
return Response.ok(responseBody).build();
}
Run Code Online (Sandbox Code Playgroud)
我想在多个资源上重用这个模式,我不想为每个响应类型创建列表DTO.是否有一种优雅的方式来使用招摇来记录这些类型的响应主体?
我正在尝试ubuntu/trusty64使用ubuntu主机上的相对路径创建带有符号链接的vanilla guest box.
> mkdir -p tmp1/tmp2
> mkdir -p tmp1/tmp3
> vagrant init ubuntu/trusty64
Run Code Online (Sandbox Code Playgroud)
在新创建的Vagrantfile中添加文件夹同步:
...
config.vm.box = "ubuntu/trusty64"
config.vm.synced_folder File.expand_path("~/tmp1"),
"/home/vagrant/tmp1",
:create => true
...
Run Code Online (Sandbox Code Playgroud)
然后把盒子和ssh拿出来:
> vagrant up
> vagrant ssh
Run Code Online (Sandbox Code Playgroud)
然后,cd到tmp2目录并尝试创建一个符号链接tmp3:
> cd tmp1/tmp2
> ln -s ../tmp3 test
ln: failed to create symbolic link ‘test’: Protocol error
Run Code Online (Sandbox Code Playgroud)
版本信息:
> vagrant version
Vagrant 1.7.4
> vboxmanage --version
5.0.4r102546
Run Code Online (Sandbox Code Playgroud)
谁看过这个吗?
java ×1
jersey ×1
rest ×1
swagger ×1
swagger-ui ×1
symlink ×1
ubuntu ×1
vagrant ×1
virtualbox ×1