Aktywne Wpisy
![Ryneczek](https://wykop.pl/cdn/c0834752/6560d10bb5822c03151d3e9722ed8939181e8d23b1965f6fdc151de4b5e7d39d,q60.png)
Ryneczek +1708
Plusują przeciwnicy palenia. Najgorszy możliwy nałóg, ponieważ ma bezpośrednie przełożenie na zdrowie osób postronnych i angażuje je w ten cały śmierdzący proceder. Oni są gorsi od narkomanów. Gdy ćpun daje sobie w żyłę, to nie obrywam jego porcją heroiny. Gdy przechodzi obok mnie palący, to mimowolnie jestem narażony na wdychanie tej trucizny i bierne palenie (w USA ginie przez to 50k ludzi rocznie). Oczywiście palacz spyta "Hej, gdzie moja wolność". A ja
![Ryneczek - Plusują przeciwnicy palenia. Najgorszy możliwy nałóg, ponieważ ma bezpośre...](https://wykop.pl/cdn/c3201142/3dcbcb9058df436cedec031625918d1e32ce58f1bee11790c87f071c615222da,w150.jpg)
Balonowy21 +50
#wybory Nie minęło nawet tydzień od wybór, a już Tomasz Siemoniak z Koalicji Obywatelskiej zapowiada koniec programu 300 tysięcznej armi. Oznacza to fale zwolnień, likwidację jednostek wojskowych jak za czasów 2007-2015, a pewnie także zerwania kontraktów zbrojeniowych. Oczywiście to również z pewnością powrót do koncepcji, żeby cała Polskę wschodnia oddac w ręce napastnika i bronić się dopiero na linii Wisły. Na pewno możemy się czuć bezpieczni, gratulacje wyboru Polacy..
Używam Hibernate i jak wyświetlam sobie pobrane dane w konsoli to jest ok, czyli mapowanie tabel na klasy działa.
Tak wygląda odpowiedź serwera, gdy Flight nie ma żadnych Ticketów: LINK
Tak, gdy Flight posiada chociaż jeden Ticket: LINK
Metoda zwracająca Flight: pastebin
Nie ma żadnych błędów w konsoli po stronie serwera. Macie jakieś pomysły jak to naprawić?
#naukaprogramowania #programowanie #webdev #java
Komentarz usunięty przez autora
Modele są generowane na podstawie tabel. Poniższe pliki zostały wygenerowane:
Flight.java
Ticket.java
Flight.hbm.xml
Ticket.hbm.xml
Nie ma żadnych logów w konsoli, tylko SQLka. Wydaje mi się, że nie potrafi poradzić sobie z relacją. Przy wyświetlaniu w konsoli relacji, flight.getTickets() zwracany jest Set idków ticketów, może to dlatego. Wygląda to tak:
[1, 6, 3, 28, 4, 5, 18, 22] zamiast obiektów Ticket.
Zobacz tutaj: https://stackoverflow.com/questions/9805387/what-is-difference-between-lazy-true-and-fetch-select-in-hibernate
Jednak jest różnica, zwracane są obiekty, ale i tak odpowiedź wygląda tak samo:
[models.Ticket@29108192, models.Ticket@54cc432e, models.Ticket@7f3b46df, models.Ticket@7f603606, models.Ticket@5fd13ef6, models.Ticket@7164fe63, models.Ticket@3bdc6e15, models.Ticket@7df762da]
EDIT: Może to ma coś wspólnego z rekursywnym wywyływaniem, Flight ma tickety, Ticket ma flighta i tak w koło. Tylko wtedy powinien być jakiś exception czy coś.
Z tego co widzę to jest tak jak napisałem. Flight ma listę ticketów, gdzie każdy ticket ma flight. I tak w kółko.
Gdyby Hibernate rzeczywiście rozwijał to w nieskończoność, to już dawno poleciałby out of memory error. Sądzę, że zarówno metoda z repozytorium jak i entry point websrvice’u kończą się prawidłowo, natomiast problem występuje po zakończeniu entry pointa, kiedy wynik zapytania pakowany jest do xmla
W klasie Flight dodałem @XmlTransient przy liście powiązanych biletów, w klasie Ticket dodałem @XmlElement przy powiązanym Flight. No i cały czas zwraca pusty Flight, mimo iż w konsoli jest normalnie obiekt klasy Flight.
Gdy miałem odwrotnie (@XmlTransient przy powiązanym Flight w klasie Ticket i @XmlElement i wrapper przy liście Ticketów w klasie Flight) to zwracało mi normalnie Flight z listą powiązanych Ticketów.
Klasa