Wsporniki sprężynowe @JsonView
od wersji 4.1.Wiosna i @ JsonView z wieloma identyfikatorami
adnotacji (opatrzone @RestController
) metodę sprężyna contoller jest z @JsonView
że ma wiele identyfikatorów mam następujący wyjątek:
java.lang.IllegalArgumentException: @JsonView only supported for request body advice with exactly 1 class argument: org.[email protected]a566e37e
Najwyraźniej zgodnie z JsonViewResponseBodyAdvice
„s Javadoc prawdziwe są następujące:
Należy pamiętać, że pomimo, że @JsonView pozwala określić więcej niż jedną klasę na , zastosowanie w przypadku porady dotyczącej treści odpowiedzi jest obsługiwane tylko z dokładnie jeden argument klasowy. Rozważ zastosowanie interfejsu złożonego.
Podobnie podczas nanoszenia metodą jako argument sterownika (opatrzone @RequestBody
) również @JsonView
który ma wiele identyfikatorów; zgodnie z JsonViewRequestBodyAdvice
„s Javadoc:
Należy zauważyć, że pomimo @JsonView pozwalając na więcej niż jednej klasie będzie określony, użycie przez radę prośba ciała jest obsługiwany tylko z dokładnie jednej klasy argumentu. Rozważ zastosowanie interfejsu złożonego.
Czy ktoś wie, czy naprawa jest planowana? Moja aktualna wiosenna wersja to 4.2.4.
Byłoby bardzo użyteczne tworzenie widoków json dla widoków publicznych, prywatnych (rozszerzających publicznie), podsumowań i szczegółowych (rozszerzających podsumowanie), a następnie łączenie ich w metody kontrolera!
Dziękuję Sebastien za komentarze, ale pytanie brzmi: możemy używać dziedziczenia (a nie agregacji). –
Nie wiem, czy rozumiesz, czy mógłbyś podać mi więcej informacji na temat twojego przypadku użycia? –