Sử dụng dữ liệu mùa xuân REST Tôi đã phơi bày ProjectRepository
hỗ trợ các dự án danh sách và thực hiện các hoạt động CRUD trên chúng. Khi tôi đến http://localhost:8080/projects/
tôi nhận được danh sách các dự án như tôi mong đợi.Hiển thị liên kết trên thực thể thu thập dữ liệu trong mùa xuân REST
Điều tôi đang cố gắng làm là thêm hành động tùy chỉnh vào phần _links
của phản hồi JSON cho Bộ sưu tập dự án.
Ví dụ, tôi muốn cuộc gọi đến http://localhost:8080/projects/
trở về một cái gì đó như thế này:
{
"_links" : {
"self" : {
"href" : "http://localhost:8080/projects/{?page,size,sort}",
"templated" : true
},
"search" : {
"href" : "http://localhost:8080/projects/search"
},
"customAction" : {
"href" : "http://localhost:8080/projects/customAction"
}
},
"page" : {
"size" : 20,
"totalElements" : 0,
"totalPages" : 0,
"number" : 0
}
}
đâu customAction
được định nghĩa trong một số bộ điều khiển.
tôi đã cố gắng tạo ra các lớp sau đây:
public class ProjectCollectionResourceProcessor implements ResourceProcessor<Resource<Collection<Project>>> {
@Override
public Resource<Collection<Project>> process(Resource<Collection<Project>> listResource) {
// code to add the links to customAction here
return listResource;
}
}
và thêm thêm Bean sau để cấu hình các ứng dụng của tôi:
@Bean
public ProjectCollectionResourceProcessor projectCollectionResourceProcessor() {
return new ProjectCollectionResourceProcessor();
}
Nhưng process(...)
không bao giờ dường như được gọi. Cách chính xác để thêm liên kết vào Bộ sưu tập tài nguyên là gì?
Xem thêm, câu hỏi này: http://stackoverflow.com/q/40156413 –