Próbuję odwzorować żądanie strony, aby jednocześnie zwrócić widok obiektu i obiektu JSON. Do tego mam wykorzystaniem dostawcę Jackson JSONWidok kontrolera zwrotu sprężyny i JSON Razem
Oto moja metoda kontroler
@RequestMapping(method = RequestMethod.GET, value = "/reports")
public String getFiles(Model model) {
//
//build array list
//
return files;
}
ta zwraca mój widok (WEB-INF/jsp/reports.jsp
) w porządku, jednak bez obiektu JSON, że Jackson buduje, więc oczywiście muszę opisywać metoda z @ResponseBody
który zapisze obiekt JSON do odpowiedzi hTTP automagicznie i zwróci files
ArrayList ...
@RequestMapping(method = RequestMethod.GET, value = "/reports")
@ResponseBody
public ArrayList<String> getFiles(Model model) {
//
///build array list
//
return files;
}
a obiekt JSON jest rzeczywiście wrócił, bu t w nowym widoku/pustym dokumencie html. Czy jest możliwe zwrócenie obiektu JSON i przekierowanie do "reports.jsp" w tym samym czasie?
To nie ma sensu. Jedno żądanie == jedna odpowiedź. Możesz przechowywać JSON w jakimś atrybucie i pobrać wartość tego atrybutu na stronie JSP lub wysłać 2 żądania, jedną do renderowania strony JSP, a drugą do uzyskania JSON. –
Co mam zamiar zbudować obiekt JSON w chwili, gdy trafię na stronę "reports.jsp" –