composite-id + hibernate
843859Jun 13 2007 — edited Jun 14 2007hello frnd,
i give more about my prblm....
this is code that i fetch record...(main)
//--------------
xml_config xConfig = new xml_config();
Criteria cri = session.createCriteria(xml_config.class);
String s="CA";
//Query q = session.createQuery("from xml_config config where config.country_cd='CA'");
cri.add(Restrictions.like("country_cd", s));
cri.add(Restrictions.like("Dtd_version", "1.0"));
List q = cri.list();//error line by eclipse ide
Iterator itr = q.iterator();
ArrayList<String> v = new ArrayList<String>();
while(itr.hasNext())
{
xConfig = (zespl_xml_config)itr.next();
v.add(xConfig.getDtd_FileName());
System.out.println("ICH FLAG "+xConfig.getICHFlag());
System.out.println("Dtd file Name "+xConfig.getDtd_FileName());
}
//----------
and this my mapping file
//--------------
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="HibernateUtil.zespl_xml_config" table="zespl_gifnoc_lmx">
<composite-id>
<key-property name="country_cd" column="dc_yrtnuoc"/>
<key-property name="Dtd_type" column="epyt_dtd"/>
<key-property name="Dtd_version" column="noisrev_dtd"/>
<key-property name="Dtd_FileName" column="eman_elif_dtd"/>
</composite-id>
<property name="ICHFlag" column="galf_hci"/>
<property name="xls_FileName" column="eman_elif_lsx"/>
</class>
</hibernate-mapping>
//------------------
and the output errror is ......
//--------------------------
Hibernate: select this_.dc_yrtnuoc as dc1_0_, this_.epyt_dtd as epyt2_0_, this_.noisrev_dtd as noisrev3_0_, this_.eman_elif_dtd as eman4_0_, this_.dc_yrtnuoc as dc1_1_0_, this_.epyt_dtd as epyt2_1_0_, this_.noisrev_dtd as noisrev3_1_0_, this_.eman_elif_dtd as eman4_1_0_, this_.galf_hci as galf5_1_0_, this_.eman_elif_lsx as eman6_1_0_ from zespl_gifnoc_lmx this_ where this_.dc_yrtnuoc like ? and this_.noisrev_dtd like ?
java.lang.ClassCastException: HibernateUtil.xml_config
at org.hibernate.loader.Loader.getKeyFromResultSet(Lo ader.java:650)
at org.hibernate.loader.Loader.getRowFromResultSet(Lo ader.java:277)
at org.hibernate.loader.Loader.doQuery(Loader.java:38 4)
at org.hibernate.loader.Loader.doQueryAndInitializeNo nLazyCollections(Loader.java:203)
at org.hibernate.loader.Loader.doList(Loader.java:149 9)
at org.hibernate.loader.Loader.list(Loader.java:1482)
at org.hibernate.loader.criteria.CriteriaLoader.list( CriteriaLoader.java:111)
at org.hibernate.impl.SessionImpl.list(SessionImpl.ja va:1246)
at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl. java:299)
at HibernateDemo.Main.main(Main.java:87)
and my java bean is...
//---
public class xml_config
{
String country_cd;
String ICHFlag;
String Dtd_type;
String Dtd_version;
String Dtd_FileName;
String xls_FileName;
public String getCountry_cd() {
return country_cd;
}
public void setCountry_cd(String country_cd) {
this.country_cd = country_cd;
}
public String getDtd_FileName() {
return Dtd_FileName;
}
public String getDtd_type() {
return Dtd_type;
}
public String getDtd_version() {
return Dtd_version;
}
public String getICHFlag() {
return ICHFlag;
}
public String getXls_fileName() {
return xls_FileName;
}
public void setDtd_FileName(String dtd_FileName) {
Dtd_FileName = dtd_FileName;
}
public void setDtd_type(String dtd_type) {
Dtd_type = dtd_type;
}
public void setDtd_version(String dtd_version) {
Dtd_version = dtd_version;
}
public void setICHFlag(String flag) {
ICHFlag = flag;
}
public String getXls_FileName() {
return xls_FileName;
}
public void setXls_FileName(String xls_FileName) {
this.xls_FileName = xls_FileName;
}
}
//---
if any one have solution then please help me...
thanx and regards,
PanDev84
Message was edited by:
pandev84