आपकी क्वेरी को देखने के बाद मुझे आपके एचक्यूएल के साथ कुछ समस्याओं का पता चलता है जिन्हें संबोधित करने की आवश्यकता है। यहां अनुभाग देखें:
https://docs .jboss.org/hibernate/orm/3.3/reference/en-US/html/queryhql.html#queryhql-joins
तो FETCH ALL PROPERTIES करने से आपके पास एक ही क्वेरी में z बच्चों पर फ़िल्टर करने की क्षमता नहीं है। तब आपकी क्वेरी इस तरह दिखनी चाहिए:
SELECT new com.mycompany.kwestionariusz.Osoba(
o.id, o.imie, o.nazwisko, o.telefon, o.email,
o.uczelnia, o.doswiadczenie, o.skadSlyszal)
from Osoba as o
INNER JOIN o.zainteresowania as z
WHERE ((o.id) = (id_osoby))
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
केवल एक चीज जिसके बारे में मैं निश्चित नहीं हूं, वह है यहां की संपत्ति:
(id_osoby)
मुझे यह कहीं भी अलियास नहीं दिख रहा है और मुझे यह कॉलम आपकी किसी भी टेबल में नहीं दिख रहा है। क्या आप सुनिश्चित हैं कि इसकी आवश्यकता है?
तो यह अब आपको ओ मूल संस्थाएं देगा जिन्हें z चिल्ड्रन के गुणों द्वारा फ़िल्टर किया गया है। z बच्चे आलसी होते हैं, इसलिए आपको z आईडी द्वारा स्वतंत्र रूप से उन लोगों के लिए पूछताछ करनी चाहिए या आप z बच्चों की सूची वापस करने के लिए गेटटर विधि को कॉल करके उन्हें उसी हाइबरनेट लेनदेन में आलसी लाने में सक्षम होना चाहिए।