Wszystko
Najnowsze
Archiwum
- 0
Z czego najczęściej korzystasz?
- WebClient 24.0% (12)
- RestTemplate 46.0% (23)
- Różnie 30.0% (15)
Cześć Mireczki, mam pytanie odnośnie aplikacji w javie, którą tworzę. Mam wprowadzone spring security, mimo wielu przejrzanych tutoriali nie mogę poradzić sobie z implementacją ról i ustawieniami dostępu. Czy moglibyście spojrzeć na kod i pomóc? Czego mi brakuje? Podpowie ktoś?
Link do src: https://github.com/kaszaaa/ReimbApp/tree/main/src/main/java/com/revature
#programowanie #java #springboot #spring
Link do src: https://github.com/kaszaaa/ReimbApp/tree/main/src/main/java/com/revature
#programowanie #java #springboot #spring
- 0
@draxgar: Właśnie w tej sposób mam i nie chodzi to. Może pomógłbys Live? Zapłacę.
- 0
@kurazjajami: od wykopka kasy nie biorę :P
Ale możemy o tym pogadać.
Ale możemy o tym pogadać.
#spring #programowanie
Czy jest ktoś w stanie podpowiedzieć jak powinien wyglądać wyglądać pattern dopuszczający wszystkie originy zawierające Stringa 'swagger'? Przykładowy origin: "https://my-swagger-dev.com"
Czy jest ktoś w stanie podpowiedzieć jak powinien wyglądać wyglądać pattern dopuszczający wszystkie originy zawierające Stringa 'swagger'? Przykładowy origin: "https://my-swagger-dev.com"
@Bean
public CorsFilterNatrafiłem na pewien problem podczas testowania i choć go rozwiązałem to dalej nurtuje mnie ciekawość w jaki sposób brać na warsztat podobne sytuacje. Mianowicie, pisząc unit testy w #spring chciałem przetestować serwis, w którym metoda tworzy w sobie obiekt, coś ala klasę konfiguracyjną/wrapper, ale go nigdzie nie zwraca na zewnątrz.
classA
foo(){
Object x = new Object()
x.setSomething(...)- 4
@mojemirabelki:a dlaczego interesuje Cię co tworzy serwis? Ze strony unit testów wrzucasz do klasy jakiś input i dostajesz output. A to czy ta klasa coś sobie tworzy, nie jest ważne. Można zmienić implementację, żeby nie tworzyło tego obiektu a testy nadal powinny przechodzić
- 0
@MQs: akurat sprawdzałem czy plik konfiguracyjny odpowiednio poustawiał wartości w obiekcie mimemessage niezbędnym do wysyłania maili. Tak zachodzę w głowę jak inaczej miałbym to kontrolować poza jakimiś testami integracyjnymi. Przy ewentualnej podmianie takiego pliku co najwyżej wywali mi wyjątek lub testy, ale nie będzie sypać błędami.
W tym przypadku to widocznie moja nieuwaga, bo nie powinienem mockować takiego obiektu, a raczej sprawdzać czy taki wrapper go odpowiednio skonfigurował, co koniec
W tym przypadku to widocznie moja nieuwaga, bo nie powinienem mockować takiego obiektu, a raczej sprawdzać czy taki wrapper go odpowiednio skonfigurował, co koniec
- 1
✨️Szkolenie Live: Kubernetes Dla Programistów!✨️
Kubernetes pozwala zautomatyzować proces wdrażania, skalowania i zarządzania skonteneryzowanymi aplikacjami. Dziś pokażę Ci jak zacząć z nim pracować, dlatego w trakcie szkolenia Live:
✅ Zaznajomię Cię z architekturą Kubernetesa - czym jest, jak działa, przybliżę kluczowe komponenty, oraz opowiem, jaka jest zasadnicza różnica pomiędzy Kubernetesem a Dockerem/Docker Compose.
✅ Pokażę Ci jak zbudować lokalne środowisko (narzędzia i oprogramowanie) do pracy z Kubernetesem.
✅ Wykonamy pierwsze wdrożenie aplikację internetową do klastra Kubernetesowego,
Kubernetes pozwala zautomatyzować proces wdrażania, skalowania i zarządzania skonteneryzowanymi aplikacjami. Dziś pokażę Ci jak zacząć z nim pracować, dlatego w trakcie szkolenia Live:
✅ Zaznajomię Cię z architekturą Kubernetesa - czym jest, jak działa, przybliżę kluczowe komponenty, oraz opowiem, jaka jest zasadnicza różnica pomiędzy Kubernetesem a Dockerem/Docker Compose.
✅ Pokażę Ci jak zbudować lokalne środowisko (narzędzia i oprogramowanie) do pracy z Kubernetesem.
✅ Wykonamy pierwsze wdrożenie aplikację internetową do klastra Kubernetesowego,

Treść przeznaczona dla osób powyżej 18 roku życia...
@SoftBull: ok przekonales mnie, rzucę okiem :) a masz gdzies link do tego live z blockchaina? bo moze rzeczywiscie źle trafilem na filmik i troche mnie ponioslo
- 3
Cześć,
✨️ Z radością mogę powiedzieć, że Polska Społeczność doczekała się pierwszej polskiej publikacji na temat Spring Boota.
Osobiście zadbałem o to, aby Spring Boot: LiveBook wyróżniał się na tle innych publikacji innowacyjnością. A to co oferuje znacznie bardziej wykracza poza ramy tradycyjnych książek.
✅ Jako punkt pierwszy postawiłem na esencjonalność – LiveBook zawiera najważniejsze rzeczy, które przydadzą się każdemu, kto pracuje ze Spring Bootem. Dążyłem do wyeliminowania niepraktycznych lub rzadko spotykanych mechanik.
✨️ Z radością mogę powiedzieć, że Polska Społeczność doczekała się pierwszej polskiej publikacji na temat Spring Boota.
Osobiście zadbałem o to, aby Spring Boot: LiveBook wyróżniał się na tle innych publikacji innowacyjnością. A to co oferuje znacznie bardziej wykracza poza ramy tradycyjnych książek.
✅ Jako punkt pierwszy postawiłem na esencjonalność – LiveBook zawiera najważniejsze rzeczy, które przydadzą się każdemu, kto pracuje ze Spring Bootem. Dążyłem do wyeliminowania niepraktycznych lub rzadko spotykanych mechanik.

@SoftBull: Gdzie ebook?
- 0
@Icouldbeyourmom: Nie opracowywałem wersji elektronicznej. W pierwszej kolejności skupiłem się nad wersją papierową. Jak będzie zainteresowanie wersją elektroniczną i znajdę więcej czasu, to postaram się też wydać ebooka ( ͡~ ͜ʖ ͡°)
- 0
- 0
@draxgar:
Tak to wygląda :P Generalnie muszę mieć linijki 9 i 10 aby przycisk zamykania działał tak jak należy.
Linijka nr 8 jest zbędna w tym przypadku. Też nie "jestem" FE, ale na razie się po prostu bawię w różne rzeczy związanymi z MVC żeby jako tako to wyglądało.
Dzięki generalnie za pomoc!
Tak to wygląda :P Generalnie muszę mieć linijki 9 i 10 aby przycisk zamykania działał tak jak należy.
Linijka nr 8 jest zbędna w tym przypadku. Też nie "jestem" FE, ale na razie się po prostu bawię w różne rzeczy związanymi z MVC żeby jako tako to wyglądało.
Dzięki generalnie za pomoc!
źródło: comment_1668344781j1g65DXPbNrfXsNwfL0686.jpg
Pobierz- 1
Mireczki mam problem z obsługą w spring boocie request z content-type jako application/x-www-form-urlencoded.
Posiłkując się tutorialem (punkt 4.1):
https://www.baeldung.com/spring-url-encoded-form-data
Przygotowałem identyczny endpoint (tak samo jest to post, ma analogicznie uzupełnione consumes, taki sam parametr metody czyli @RequestParam MultiValueMap paramMap).
Posiłkując się tutorialem (punkt 4.1):
https://www.baeldung.com/spring-url-encoded-form-data
Przygotowałem identyczny endpoint (tak samo jest to post, ma analogicznie uzupełnione consumes, taki sam parametr metody czyli @RequestParam MultiValueMap paramMap).
- 0
@Young_Senior przecież ja to pisałem kilka godzin temu.
Laptop dawno zamknięty ;)
Laptop dawno zamknięty ;)
@Generyczny_nick: no i elegancko, jak coś to zgłoś to jutro na Daily i tyle, nie bój żaby, będzie git ( ͡° ͜ʖ ͡°)
- 0
@SendMeAnAngel: Najlepiej to byłoby wywalić opcję przychodzenia bez Z, bo to nie wiadomo wtedy z jakiej strefy czasowej przyszło. W praktyce "2022-11-08T21:37:21.370Z" i "2022-11-08T21:37:21.370" (bez Z) to dwie różne godziny w Polsce, w UK w czasie letnim zresztą pewnie też. Albo zamiast szlaczków brać goły timestamp ( ͡° ͜ʖ ͡°)
A jak nie da rady ustawić klienta, to szukałbym parserów pod hasłem ISO 8601
A jak nie da rady ustawić klienta, to szukałbym parserów pod hasłem ISO 8601
- 0
@SendMeAnAngel: opcja to własny mapper, który wpierw spróbuje skonwertować z patternem z 'Z', a później bez.
Jak json przychodzi z datą bez Z to nie trzyma się standardów. Łatasz dziurę nie tam, gdzie trzeba...
Jak json przychodzi z datą bez Z to nie trzyma się standardów. Łatasz dziurę nie tam, gdzie trzeba...
- 2
✨️Szkolenie Live: Wdrażamy Skonteneryzowane Appki Do Chmury!✨️
Z wykorzystaniem GitLaba zaprojektujemy scenariusz w ramach którego pobierzemy kod aplikacji Frontendowej (Angular) oraz Backendowej (Spring Boot) z repozytorium, przebudujemy go i stworzymy dla nich obrazy Dockerowe, które umieścimy w Container Registry. W finalnym etapie naszego scenariusza obrazy Dockerowe zostaną wdrożone i uruchomione na Cloud Hostingu!
Nowa edycja z myślą o osobach, które o nią dopytywały i w tym też @ArcadiusK
Z wykorzystaniem GitLaba zaprojektujemy scenariusz w ramach którego pobierzemy kod aplikacji Frontendowej (Angular) oraz Backendowej (Spring Boot) z repozytorium, przebudujemy go i stworzymy dla nich obrazy Dockerowe, które umieścimy w Container Registry. W finalnym etapie naszego scenariusza obrazy Dockerowe zostaną wdrożone i uruchomione na Cloud Hostingu!
Nowa edycja z myślą o osobach, które o nią dopytywały i w tym też @ArcadiusK

- 3
@whoru: W nowoczesnych aplikacjach biznesowych całość logiki, testowania, utrzymywania Spring Security zastępuje się stosowaniem gotowych, sprawdzonych komponentów pozwalając programistom głównie skupić się na tym co najważniejsze, czyli programowaniu logiki biznesowej. Z tego co zaobserwowałem przez ostatnie 2 lata, to od Spring Security się odchodzi a stosuje się gotowe komponenty na poziomie infrastruktury, k8s.
- 2
@Young_Senior: masz racje, masz osobny serwis do tego na poziomie gatewaya na przykład. Mimo wszystko, dobrze w ogóle wiedzieć o co w tym wszystkim chodzi i znać mechanizmy według mnie.
Kolejny raz przekonuję się, że Spring Security to kombajn, w którym teoretycznie każdy komponent można podmienić, ale są tak ze sobą powiązane, że chcąc coś zrobić inaczej, trzeba przepisać połowę komponentów.
Udało mi się nieco okiełznać klienta OAuth2:
1. Tworząc filtr, który na podstawie nagłówka X-USER-ID utworzy obiekt Authentication - otóż SS nie akceptuje anonimowych klas Authentication ani jak przekażemy principal w formie ciągu znaków przy ręcznym utworzeniu OAuth2AuthorizeRequest.
2.
Udało mi się nieco okiełznać klienta OAuth2:
1. Tworząc filtr, który na podstawie nagłówka X-USER-ID utworzy obiekt Authentication - otóż SS nie akceptuje anonimowych klas Authentication ani jak przekażemy principal w formie ciągu znaków przy ręcznym utworzeniu OAuth2AuthorizeRequest.
2.
- 0
Celem jest napisanie komunikacji z zewnętrzną usługą w imieniu konkretnego użytkownika. Czyli użytkownik loguje się w tej usłudze i wyraża zgodę na dostęp do swoich danych lub wykonywania pewnych czynności. Chodzi o coś takiego jak jest na Facebooku, kiedy zezwalasz innej aplikacji na dostęp do twojego konta. Potem aplikacja może sama uzyskać dostęp do usługi, mając ważny token.
@whoru: Integruję się z zewnętrzną usługą
1. jaki jest sens walidacji redirect URI?
@whoru: Integruję się z zewnętrzną usługą
@SendMeAnAngel: moim zdaniem za duży margines błędu dotyczący bezpieczeństwa jest używając Spring Security, jaka masz pewność że zabdasz o każdy corner case? Nie wiem jak to wygląda ale na AWSie już się nie używa Spring Security tylko korzysta z gotowych komponentów, tak samo z innymi rozwiązaniami jak istio ale szanuje za wytrwałość ( ͡° ͜ʖ ͡°)
- 1
✨️Szkolenie Live: Wdrażamy Skonteneryzowane Appki Do Chmury!✨️
Z wykorzystaniem GitLaba zaprojektujemy scenariusz w ramach którego pobierzemy kod aplikacji Frontendowej (Angular) oraz Backendowej (Spring Boot) z repozytorium, przebudujemy go i stworzymy dla nich obrazy Dockerowe, które umieścimy w Container Registry. W finalnym etapie naszego scenariusza obrazy Dockerowe zostaną wdrożone i uruchomione na Cloud Hostingu!
✅Dzięki temu osiągniemy w pełni zautomatyzowany proces w ramach którego:
Następuje budowanie i testowanie znajdującego się w repozytorium ➜ Tworzony zostaje obraz
Z wykorzystaniem GitLaba zaprojektujemy scenariusz w ramach którego pobierzemy kod aplikacji Frontendowej (Angular) oraz Backendowej (Spring Boot) z repozytorium, przebudujemy go i stworzymy dla nich obrazy Dockerowe, które umieścimy w Container Registry. W finalnym etapie naszego scenariusza obrazy Dockerowe zostaną wdrożone i uruchomione na Cloud Hostingu!
✅Dzięki temu osiągniemy w pełni zautomatyzowany proces w ramach którego:
Następuje budowanie i testowanie znajdującego się w repozytorium ➜ Tworzony zostaje obraz
źródło: comment_1667156893tWqMG3b6uSnjW5SNK0R0xd.jpg
PobierzRobił ktoś uwierzytelnianie OAuth2 do zewnętrznych usług w #springboot z użyciem #springsecurity i komuś to działało? Standardowy URL /oauth2/authorization/nazwauslugi nie działa, a ręczne wywołanie authorize() rzuca wyjątek "Authorization required for Client Registration Id: nazwauslugi" - wygląda na to, że odpowiednie filtry nie są wywoływane (np. OAuth2AuthorizationRequestRedirectFilter). A tak w ogóle to szukam jakiejś lekkiej biblioteki bez integracji ze Spring Security. Chodzi o to, żeby użytkownik mógł się połączyć
- 1
- 1
Mireczki mam pytanie odnośnie ustawiania kolejności filtrów w spring boocie.
Mam zdefiniowany jeden filtr poprzez rozszerzenie klasy OncePerRequestFilter i tutaj spoko, w trakcie konfiguracji beana mogę ustawić sobie order i nawet działa.
Mam drugi bean (konfiguracja w application.properties) z logbookiem (do logowania requestów i responsów od zalando) który ma defaultowo najniższy priorytet (widać to po odpaleniu aplikacji z logowaniem na poziomie debug (logbookFilter urls=[/*] order=2147483647)
Problem w tym, że potrzebuję aby filtr z logbookiem uruchamiał
Mam zdefiniowany jeden filtr poprzez rozszerzenie klasy OncePerRequestFilter i tutaj spoko, w trakcie konfiguracji beana mogę ustawić sobie order i nawet działa.
Mam drugi bean (konfiguracja w application.properties) z logbookiem (do logowania requestów i responsów od zalando) który ma defaultowo najniższy priorytet (widać to po odpaleniu aplikacji z logowaniem na poziomie debug (logbookFilter urls=[/*] order=2147483647)
Problem w tym, że potrzebuję aby filtr z logbookiem uruchamiał
@Generyczny_nick: sam zarejestruj tego filtra z własnym orderem, zobacz sobie na LogbookAutoConfiguration.java
- 0
@draxgar uzylet setOrder a skonfigurowałem na wzór auto konfiguracji spring boota.
- 8
Spring Security, demystified by Daniel Garnier Moiroux
Świetny talk z tegorocznego Devoxxa, dla tych co chcą sobie usystematyzować lub nabyć wiedzę od podstaw odnośnie Spring Security.
#spring #java #naukaprogramowania
Świetny talk z tegorocznego Devoxxa, dla tych co chcą sobie usystematyzować lub nabyć wiedzę od podstaw odnośnie Spring Security.
#spring #java #naukaprogramowania

- 0
- 0
Mireczki, dlaczego aplikacja nie działa gdy controller jest w paczce Controllers? Dodałem @Controller a mimo to spring nadal nie widzi takiego beana jesli nie jest w tym samym folderze co plik z @SpringBootApplication
#java #spring
#java #spring
źródło: comment_1666110032cUbNYdNWZsxZ7UEp3yIoFy.jpg
Pobierz- 1
@szkok: poczytaj jak działa @SpringBootApplication co ma wspólnego z @Configuration i jakie foldery/pakiety na ostatnia bierze pod uwagę
ps. i na boską sake, pakiety z małej
ps. i na boską sake, pakiety z małej
- 1
@szkok: Zadziała jak zrobisz powyżej klasy, w której masz
Innymi słowy: trzymaj się drzewa pakietów, albo wskaż springowi gdzie ma szukać beanów.
@SpringBootApplicationInnymi słowy: trzymaj się drzewa pakietów, albo wskaż springowi gdzie ma szukać beanów.
2
SpringBoot: Czyszczenie bazy H2 przed uruchomieniem każdego testu integracyjnego

W tym artykule poza podaniem na tacy dwóch rozwiązań tytułowego problemu, porozmawiamy sobie również o kilku tematach pobocznych. Uważam je za warte omówienia, ponieważ wyjaśniają specyficzne zachowanie SpringBoot i bazy H2 podczas uruchamiania testów JUnit.
z- 1
- #
- #
- #
- #
- #
- #










Niestety, dzisiejszy LiveStream będzie dość krótki, ponieważ OpenAI zrealizuje dużo roboty za nas - pokażę Ci jak to osiągnąć Dlatego tym bardziej zachęcam, bo nauczymy się dużo nowych rzeczy, a po szkoleniu każdy będzie w stanie wdrożyć swoje
Dlaczego szkolisz ludzi z czegoś, czego sam do końca nie rozumiesz?
Może to też kwestia stresu, bo widać że Cię stres zjadł jak CLI zaczęło Ci sypać błędami, ale w ciągu mniej niż 30
minut spokojnie można było wyłapać,
Pod koniec pojawiły się także smaczki typu "jeden Deployment z trzema ReplicaSet'ami", czy "Mam swoją domenę i nie ma portu, a strona działa". No działa, ale dlatego że port jest domyślny i jest podawany w sposób