Saya menggunakan Spring Boot (1.2.1), dengan cara yang sama seperti tutorial Membangun Layanan Web yang tenang :
@RestController
public class EventController {
@RequestMapping("/events/all")
EventList events() {
return proxyService.getAllEvents();
}
}
Jadi di atas, Spring MVC secara implisit menggunakan Jackson untuk menserialisasikan EventList
objek saya ke JSON.
Tetapi saya ingin melakukan beberapa penyesuaian sederhana pada format JSON, seperti:
setSerializationInclusion(JsonInclude.Include.NON_NULL)
Pertanyaannya adalah, apa cara termudah untuk menyesuaikan mapper JSON implisit?
Saya mencoba pendekatan tersebut dalam posting blog ini , membuat CustomObjectMapper dan seterusnya, tetapi langkah 3, "Daftarkan kelas dalam konteks Musim Semi", gagal:
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'jacksonFix': Injection of autowired dependencies failed;
nested exception is org.springframework.beans.factory.BeanCreationException:
Could not autowire method: public void com.acme.project.JacksonFix.setAnnotationMethodHandlerAdapter(org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter);
nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException:
No qualifying bean of type [org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter]
found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
Sepertinya instruksi tersebut untuk versi Spring MVC, sementara saya mencari cara sederhana untuk membuatnya berfungsi dengan Spring Boot terbaru.