मुझे हाइबरनेट मानदंडों में समस्याएं आ रही हैं। मैं एक मानदंड बनाने की कोशिश कर रहा हूं जहां मैं कक्षा के सदस्य ऑब्जेक्ट की आईडी को क्वेरी रिटर्न देता हूं।जावा/हाइबरनेट: नेस्टेड ऑब्जेक्ट मानदंडों के साथ संपत्ति का समाधान नहीं कर सका
उदाहरण के लिए:
org.hibernate.QueryException: could not resolve property: lecture.admin.id of: xxx.yyy.Enquiry
Enquiry
वर्ग व्याख्यान चर, जो बारी में व्यवस्थापक चर शामिल होते हैं करता है:
Criteria crit = session.createCriteria(Enquiry.class);
crit.add(Expression.eq("lecture.admin.id", userId));`
इसी का परिणाम एक अपवाद है। मैंने lecture.id
का उपयोग करने का प्रयास किया है और यह ठीक काम करता है।
क्या इस तरह के ऑब्जेक्ट पदानुक्रम को नीचे जाने वाले स्तरों की संख्या की सीमा है?
धन्यवाद!
कोड के टुकड़े:
public Integer getId() {
if (id != null) {
return id;
}
return TransferBean.NOT_SET;
}
हाइबरनेट मानचित्रण एक्सएमएल से:
public class Lecture extends TransferItem {
private User admin;
public User getAdmin() {
return admin;
}
}
'उपयोगकर्ता' वर्ग Person
वर्ग, जो बारी में एक Item
वर्ग फैली हुई है, जो getId()
विधि है फैली :
<class name="User" table="user">
<id column="user_id" name="id">
<generator class="increment"/>
</id>
...
<class name="Lecture" table="lecture">
<many-to-one class="User" column="user_fk" lazy="false" name="admin"/>`
यह है user
तालिका:
mysql> show columns from user;
+-----------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+-------+
| user_id | int(11) | NO | PRI | | |
| firstname | varchar(50) | YES | | NULL | |
| lastname | varchar(50) | YES | | NULL | |
| signature | varchar(16) | YES | | NULL | |
| email_signature | varchar(256) | YES | | NULL | |
| password | varchar(32) | YES | | NULL | |
| phone | varchar(16) | YES | | NULL | |
| email | varchar(255) | YES | UNI | NULL | |
| lecturer_fk | int(11) | YES | MUL | NULL | |
| access | int(11) | YES | | NULL | |
| deleted | tinyint(1) | YES | | NULL | |
+-----------------+--------------+------+-----+---------+-------+
11 rows in set (0.02 sec)`
आह, बहुत अच्छा बिंदु। – Henning
हमेशा सामान्य @ ChssPly76 –
के रूप में निर्देशक यह खूबसूरती से काम करता है। सहायता के लिए आपका बहुत - बहुत धन्यवाद। – Malakim