Dlaczego przy teście serwisu leci LazyInizializationException a przy teście kontrolera już nie i przechodzi normalnie mimo, że też korzysta z tego serwisu?

@test
void testService() {
var film = filmRepository.save(createFilm());
var hall =
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

strzelam, że tutaj dlatego że tworzysz te obiekty na potrzebę testu a tam ich może nie być ale w sumie nie wiem bo widzę tylko wycinek kodu


@Smonk_Da_Wead: Mam dwie refleksje. Naprawdę używacie chat gpt żeby rozwiązywać takie problemy? Przecież ich rozwiązywane to najlepsza droga aby się rozwijać i zrozumieć jak działa stack technologiczny w którym pracujemy. Znalezienie przyczyny tego problemu da więcej wiedzy niż przeczytanie niejednej książki. W drugiej
  • Odpowiedz
Pracuje ostatnio z takimi półgłowkami w #java
Trochę po nich sprzątałem i robiłem refaktor. Wydzielilem z repozytorium interfejs, żeby go używali i dało się to testować.
I taki jeden miał zrobić implementacje InMemory na potrzeby testów.
I co zrobił? Zamiast zaimplementować nowy interfejs, to podklasowal istniejąca implementacje i nazwał ją InMemory. Napisał wszystkie metody. Do konstruktora powkladal nulle w testach i Elo. Testy przechodzą.

#programista15k #programowanie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Nofenak: kiedyś byłem bardzo przeciwny lombokowi, ale jak zacząłem korzystać, to nie mogę już bez niego żyć.

Nie daje do każdego projektu, ale często korzystam.

Ja rozumiem, że wszystko to co robi lombok jesteś w stanie wygenerować dwoma kliknięciami.

Problem pojawia się, kiedy coś prototypujesz, rozpoznajesz temat i pracujesz na ciągle zmieniającym się kodzie. Wtedy te wszystkie gettery, buildery, equalsy/haszkody mocno spowolniaja zmiany. A tak - z lombokiem jak chcę
  • Odpowiedz
@biaukowe: To i tak jest nic, jak teraz ja mam 6 lat expa i obawiam się o przyszłość bo jest tyle Javowców i konkurencja. Wiem, że można gadać, że jak ktoś jest dobry to zawsze coś znajdzie, ale to jest trochę takie p13rdolenie.
  • Odpowiedz
Siema Mirasy.

Potrzebuje, aby ktoś koncepcyjnie potwierdził lub zaprzeczył, czy taki prosty scenariusz jest wykonalny:

1) Mam lambdę (kotlin/quarkus)
2) Lambda nasłuchuje na SQSEvent
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Yeboy wiadomości idą na dlq jeśli w czasie visibility timeout nie zostały usunięte z głównej kolejki. Dla aws nie ma znaczenia czym to czytasz i jak przetwarzasz. Jeśli nie usuniesz to idzie to dlq jeśli masz redrive policy
  • Odpowiedz
Cześć,
Potrzebuję rady.
Szukam od jakiegoś czasu pracy jako programista Java za granicą i przyznam że mam już dosyć.
Wysyłam CV do Hiszpanii bo mówię po hiszpańsku, ale też do Niemiec i Austrii, chociaż niemiecki znam srednio.
I nic, mialem dwie rozmowy z Hiszpanii, z czego jedna to "jako zadanie rekrutacyjne zrób projekt, zajmie tylko kilka godzin". Z Niemiec jedna rozmowa i zadanie rekrutacyjne jak w Hiszpanii.
Odrzucają kandydaturę bez rozpatrzenia po prostu dlatego że nie jestem
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@tolman123 masz hiszpańskie dokumenty, tj. numer NIE? No bo jak nie to się nie dziwię że cię nie chcą przyjąć, nikomu się nie chce w to bawić jak tylu jest bezrobotnych na miejscu
  • Odpowiedz
serio jest tak trudno teraz znaleźć coś sensownego w IT? java dev z expem 3-4 lata, teraz nam się projekt wykrusza i czarne chmury widzę XD jak to wygląda z waszej perspektywy?
#programista15k #java #it
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bart1234: jak długo siędzę w IT tak jeszcze nigdy nie było tak źle. ci co twierdzą, że jest inaczej to pewnie siedzą w jakiś zakontraktowanych na 10 lat projektach i nie próbowali jeszcze szukać roboty w popularnym stacku. 130CV poszło, może 15 spotkało się z odpowiedzią a finalnie może z 10 to była konkretna rozmowa techniczna po której nigdy nie dostałem feedbacku. poza tym nigdy wcześniej nie dostawałem zwrotek, że
  • Odpowiedz
Mam w swojej aplikacji trzy role i chciałbym przetestować czy zostanie zwrócony odpowiedni błąd jeśli użytkownik nie ma roli admina i próbuje strzelić na endpoint dla admina. W testach mam porobione metody np. sendRequestAsUser, która wyciąga użytkownika z rolą USER z bazy, generuje JWT i zwraca token jako String. Pierwsze co przyszło mi do głowy to napisanie testu sparametryzowanego żeby nie powtarzać kodu, ale tutaj pojawia się problem, bo do adnotacji MethodSource
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

W gwoli jasności, to możliwe jest przekazanie niestatycznej metody do @MethodSource zmieniając cykl życia testu adnotacją - @TestInstance(PER_CLASS).

Możliwe, że twoją weryfikację da się zrealizować jeszcze łatwiej (bez bazy danych). Z MockMvc mogłoby to wyglądać w następujący sposób: mockMvc.perform(get(...).with(SecurityMockMvcRequestPostProcessors.user().roles(Role.ADMIN))
więc @MethodSource mógłby parametryzować Role albo cały RequestPostProcessor. Tutaj będzie zwykły Springowy User ale tych RequestPostProcessor jest sporo (są też związane z OAuth2).

Jeżeli chcesz WebTestClient to tam to się nazywa mutator (interfejs
  • Odpowiedz
  • 0
@Smevios:

Ta adnotacja @TestInstance(PER_CLASS) może mi się przydać, dzięki.

Zrobiłem sobie sparametryzowany test z wykorzystaniem MockMvc i w sumie działa to okey. Są zwolennicy używania MockMvc, jak i są przeciwnicy. Ja jeszcze nie zagłębiałem się w problemy z
  • Odpowiedz
- I jak tam, froncik już machnięty?
- Ale mnie szef zatrudnił do backendu...
- Jak to? Przecież podobno umiesz w Dżawa Skript!
- Ja mówiłam, że umiem Java, JS to coś innego...

A jeśli trafi się taki niewypał, to warto mieć backup. Nic nie sugerujemy, ale... SPRAWDŹ MATCHMAKING ( ͡°( ͡° ͜ʖ(
justjoin_it - - I jak tam, froncik już machnięty?
- Ale mnie szef zatrudnił do backen...

źródło: 431424436_808509317979898_2118719973935791824_n

Pobierz
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Chcę stworzyć metodę w springowym kontrolerze, z endpointem pod który wyślę dużo danych (dostałem jsona z 20 polami, ale może być ich więcej w przyszłości). i te dane prześlę dalej robiąc calla do zewnętrznego api żeby wyciągnąć jakieś tam dane biznesowe.

No i tu pytanie. Mówią, że GET służy do pobierania danych a POST tylko do zmiany stanu. Ale raczej nie jest to bezpieczne wysyłać te dane w urlu, co wtedy? Można
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mirek_dev: GET może mieć body

Niestety nie jest to dobrym pomysłem bo dużo bibliotek / serwerów / proxy HTTP nadinterpretuje specyfikację (lub zostało zakodowana na bazie nieaktualnej, sprzed 2014) i potrafi robić różne dziwne rzeczy jak np. ignorować body w GET albo nie pozwala go dodać po stronie klienta itp. - jeśli tak jest to jest to radosna twórczość tychże bibliotek, bo obecnie obowiązująca specyfikacja HTTP nie zabrania.

A payload
  • Odpowiedz
✨️ Obserwuj #mirkoanonim
#programowanie #programista15k #java #kotlin

Zarabiam 12500 UOP. Mam z tego 8900 w dużym wojewódzkim. Nie dostałem podwyżki teraz, bo dostałem awans w listopadzie na mida. Podniosł mi lead z 11000 na 12500 z zapewnieniem że w marcu dostanę z 1000 w górę. Nie dostałem. Jako że wskoczyłem w miejsce seniora który miał 21000 na B2B doszły mi jego obowiązki, a
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Kiedyś usłyszałem od pewnego znajomego javowca, który śmiał się z rekrutujących, że "nigdy nie widział dobrze napisanego programu wielowątkowego".

Jak kiedyś usłyszę jeszcze raz coś takiego, to wyśmieję, świadczy to o zupełnej niekompetencji (a miał wtedy okolice 4-5 lat doświadczenia).

To jest równoznaczne do przyznania się do niepełnosprawności programistycznej, sama maszyna Javy operuje na natywnych wątkach OS, a nie mieć świadomości co się pisze i tego, że frameworki działają pod spodem na
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 2
@programista15cm: Tak, znam to i książkę kiedyś próbowałem przeczytać xD Ale samo stwierdzenie, że czegoś się nie widziało, świadczy przede wszystkim o ignorancji.

Ale to był typ człowieka, co pytał noobów co zwróci kolekcja (dajmy na to mapa) jak nie będzie wartości w kolekcji :) Ja mu odpowiedziałem: to zależy od implementacji. A ten na to: no jak to, NullPointerException xDDDD
  • Odpowiedz