Aktywne Wpisy

Bez sensu zupełnie korci mnie żeby wrzucić swoje dojce na mirko. Powstrzymajcie mnie ( ͡° ʖ̯ ͡°)

Umeraczyk +21
Przypominam o tej krindżowej akcji przez którą straciłeś miłość życia
Skopiuj link
Skopiuj link

Regulamin
Reklama
Kontakt
O nas
FAQ
Osiągnięcia
Ranking
#programowanie #naukaprogramowania #java
Muszę obsłużyć błąd w Springu, jeżeli klient umieści zły header accept. Normalnie aplikacja zwraca JSONy. Próbowałem to zrobić z ControllerAdvice, ExceptionHandler, ale nie jest zwracany ResponseEntity po rzuceniu wyjątku, tylko logi w konsoli. Rozumiem, że nawet ze złymi nagłówkami żądanie przechodzi przez kontroler i dopiero potem jest wykrywany brak możliwości obsłużenia takiego formatu, jeżeli ktoś da w accept np. application/pdf? Chciałbym, żeby w chwili wykrycia w kontrolerze nieprawidłowych nagłówków był zwracany ResponseEntity i żądanie nie przechodziło dalej.
Jak rozwiązać ten problem?
---
Kliknij tutaj, aby odpowiedzieć w tym wątku anonimowo
Kliknij tutaj, aby wysłać OPowi anonimową wiadomość prywatną
ID: #630b2ef6e1ffb3d8a8a62362
Post dodany za pomocą skryptu AnonimoweMirkoWyznania ( https://mirkowyznania.eu ) Zaakceptował: LeVentLeCri
Roczny koszt utrzymania Anonimowych Mirko Wyznań wynosi 235zł. Wesprzyj projekt
Takie mam wymagania, że aplikacja ma zwracać ResponseEntity z kodem i kilkoma informacjami. Jeżeli dam produces application/json to wtedy nic nie zwraca kontroler, a konsola drukuje WARN o treści Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]
Czyli API z którym się łączę rzuca HttpMediaTypeNotAcceptableException, ale nie mogę za chiny ludowe obsłużyć tego wyjątku
Potem to można to wyciągnąć do aspekta i wszystkie endpointy obsłużyć.
Komentarz usunięty przez autora
Chodzi o to, jak zwrócić odpowiedź w postaci JSONa z kilkoma polami? bo kiedy ExceptionHandler obsługuje ten wyjątek HttpMediaTypeNotAcceptableException i jest VOID i np. drukuje coś w konsoli to wszystko działa jak powinno.
Problem pojawia się wtedy, kiedy próbuję zwrócić ResponseEntity. Chcę, żeby mój ControllerAdvice obsłużył wyjątek HttpMediaTypeNotAcceptableException i zwrócił
PS. poczytaj o czymś takim jak @RequestHeader i Spring Validation
No dobra, czyli w ControllerAdvice wyłapujesz wyjątek HttpMediaTypeNotAcceptableException i zwracasz void i jest ok, a jak chcesz zwrócić ResponseEntity to masz problem? Jaki problem, jakie błędy dostajesz? Bez problemu powinieneś móc zwrócić swój błąd jako json
Dobra, problem jest z serializacją, jeżeli klienty akceptują application/xml, to mój ExceptionHandler ma problem ze zwróceniem JSONa. Rozwiązaniem jest stworzenie odpowiedzi poprzez metody statyczne i buildera, gdzie mogę określić rodzaj
Chyba wiem jakie zadanie kolega robi i od kogo ;) z githubem?