Utilizzo dei dati di primavera REST È stato esposto uno ProjectRepository
che supporta l'elencazione dei progetti e l'esecuzione di operazioni CRUD su di essi. Quando vado a http://localhost:8080/projects/
ottengo l'elenco dei progetti come mi aspetto.Esposizione del collegamento sull'entità di raccolta nei dati primaverili REST
Quello che sto cercando di fare è aggiungere un'azione personalizzata alla sezione _links
della risposta JSON per la Raccolta progetti.
Per esempio, mi piacerebbe la chiamata a http://localhost:8080/projects/
per tornare qualcosa di simile:
{
"_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
}
}
Dove customAction
è definito in alcuni controller.
Ho cercato di creare la seguente classe:
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;
}
}
e aggiungendo aggiungendo la seguente Bean per la mia configurazione di applicazioni:
@Bean
public ProjectCollectionResourceProcessor projectCollectionResourceProcessor() {
return new ProjectCollectionResourceProcessor();
}
Ma non process(...)
fa mai sembrano avere chiamato. Qual è il modo corretto di aggiungere collegamenti a raccolte di risorse?
Vedi anche, questa domanda: http://stackoverflow.com/q/40156413 –