[hibernate-issues] [Hibernate-JIRA] Closed: (HHH-3093) Hibernate Exception

Max Rydahl Andersen (JIRA) noreply at atlassian.com
Fri Feb 1 11:35:55 EST 2008


     [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Max Rydahl Andersen closed HHH-3093.
------------------------------------

    Resolution: Rejected

read the docs and tutorials on how to configure hibernate and use the user forum.

> Hibernate Exception
> -------------------
>
>                 Key: HHH-3093
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3093
>             Project: Hibernate3
>          Issue Type: Bug
>          Components: query-sql
>    Affects Versions: 3.1.3
>         Environment: Hibernate 3.0, MySQL
>            Reporter: Achappan M
>
> Hil,
>     I got the following exception when i saved the data into the database. I can identified, my data is not committed in db.  Here i specified my java classes. Please anyone guide me to solve this problem.
> 21:27:44,359 ERROR [STDERR] org.hibernate.MappingException: Unknown entity: com.construction.beans.PersonalInfo
> 	at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:610)
> 	at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1246)
> 	at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:89)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
> 	at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)
> 	at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
> 	at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
> 	at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:524)
> 	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
> 	at org.hibernate.impl.SessionImpl.save(SessionImpl.java:510)
> 	at com.construction.DB.DBUtil.save(DBUtil.java:48)
> 	at com.construction.Servlets.AddPersonalInfo.personalInfo(AddPersonalInfo.java:48)
> 	at com.construction.Servlets.AddPersonalInfo.doGet(AddPersonalInfo.java:25)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
> 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
> 	at java.lang.Thread.run(Unknown Source)
> personalInfo.hbm File:
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE hibernate-mapping PUBLIC
>     "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
>     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
> <hibernate-mapping>
>    <class name="com.construction.beans.PersonalInfo" table="personalinfo" >
> 		<id name="emp_code" column = "EMP_CODE" type="java.lang.Long">
>           <generator class="increment"/>
>         </id>
> 		<property name="employee_Name" type="java.lang.String"/>
> 		<property name="father_Name" type="java.lang.String"/>
> 		<property name="mother_Name" type="java.lang.String"/>
> 		<property name="dob" type="java.lang.String"/>
> 		<property name="gender" type="java.lang.String"/>
> 		<property name="marital_status" type="java.lang.String"/>
> 		<property name="bloodgroup" type="java.lang.String"/>
> 		<property name="qualification" type="java.lang.String"/>
> 		<property name="address" type="java.lang.String"/>
> 		<property name="email" type="java.lang.String"/>
> 		<property name="mobileno" type="java.lang.String"/>
> 		
> 		<one-to-one name="salaryInfo"  class="com.construction.beans.SalaryInfo"  
> 		         cascade="all" constrained="false"/>
> 		<!-- property name="empPhoto" type="java.lang.String"/-->
> 	</class>
>    </hibernate-mapping>
> salaryInfo.hbm.xml
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE hibernate-mapping PUBLIC
>     "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
>     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
> <hibernate-mapping>
>    <class name="com.construction.beans.SalaryInfo" table="SalaryInfo" >
> 		<id name="emp_code" column = "EMP_CODE" type="java.lang.Long">
>           <generator class="increment"/>
>         </id>
> 		<property name="empno" type="java.lang.String"/>
> 		<property name="doj" type="java.lang.String"/>
> 		<property name="designation" type="java.lang.String"/>
> 		<property name="accountno" type="java.lang.String"/>
> 		<property name="basic" type="java.lang.String"/>
> 		<property name="allowance" type="java.lang.String"/>
> 		<property name="ot_per_hour" type="java.lang.String"/>
> 		<property name="pfno" type="java.lang.String"/>
> 		<property name="esicno" type="java.lang.String"/>
> 		<property name="mem_UHID" type="java.lang.String"/>
> 		<property name="licno" type="java.lang.String"/>
> 		<!-- property name="empPhoto" type="java.lang.String"/-->
> 	</class>
>    </hibernate-mapping>
> Persistent Class:
> package com.construction.beans;
> import java.io.Serializable;
> public class PersonalInfo implements Serializable{
> 	/**Personal Details**/
> 	private long emp_code;
> 	private String employee_Name;
> 	private String father_Name;
> 	private String mother_Name;
> 	private String dob;
> 	private String gender;
> 	private String marital_status;
> 	private String bloodgroup;
> 	private String qualification;
> 	private String address;
> 	private String email;
> 	private String mobileno;
> 	private String empPhoto;
> 	private SalaryInfo salaryInfo;
> 	
> 	
> 	public long getEmp_code() {
> 		return emp_code;
> 	}
> 	public void setEmp_code(long emp_code) {
> 		this.emp_code = emp_code;
> 	}
> 	public String getEmployee_Name() {
> 		return employee_Name;
> 	}
> 	public void setEmployee_Name(String employee_Name) {
> 		this.employee_Name = employee_Name;
> 	}
> 	public String getFather_Name() {
> 		return father_Name;
> 	}
> 	public void setFather_Name(String father_Name) {
> 		this.father_Name = father_Name;
> 	}
> 	public String getMother_Name() {
> 		return mother_Name;
> 	}
> 	public void setMother_Name(String mother_Name) {
> 		this.mother_Name = mother_Name;
> 	}
> 	public String getDob() {
> 		return dob;
> 	}
> 	public void setDob(String dob) {
> 		this.dob = dob;
> 	}
> 	public String getGender() {
> 		return gender;
> 	}
> 	public void setGender(String gender) {
> 		this.gender = gender;
> 	}
> 	public String getMarital_status() {
> 		return marital_status;
> 	}
> 	public void setMarital_status(String marital_status) {
> 		this.marital_status = marital_status;
> 	}
> 	public String getBloodgroup() {
> 		return bloodgroup;
> 	}
> 	public void setBloodgroup(String bloodgroup) {
> 		this.bloodgroup = bloodgroup;
> 	}
> 	public String getQualification() {
> 		return qualification;
> 	}
> 	public void setQualification(String qualification) {
> 		this.qualification = qualification;
> 	}
> 	public String getAddress() {
> 		return address;
> 	}
> 	public void setAddress(String address) {
> 		this.address = address;
> 	}
> 	public String getEmail() {
> 		return email;
> 	}
> 	public void setEmail(String email) {
> 		this.email = email;
> 	}
> 	public String getMobileno() {
> 		return mobileno;
> 	}
> 	public void setMobileno(String mobileno) {
> 		this.mobileno = mobileno;
> 	}
> 	public String getEmpPhoto() {
> 		return empPhoto;
> 	}
> 	public void setEmpPhoto(String empPhoto) {
> 		this.empPhoto = empPhoto;
> 	}
> 	public SalaryInfo getSalaryInfo() {
> 		return salaryInfo;
> 	}
> 	public void setSalaryInfo(SalaryInfo salaryInfo) {
> 		this.salaryInfo = salaryInfo;
> 	}
> }
> DBUtil.java
> package com.construction.DB;
> import java.io.File;
> import java.util.List;
> import org.hibernate.Session;
> import org.hibernate.SessionFactory;
> import org.hibernate.cfg.Configuration;
> import org.hibernate.tool.hbm2ddl.SchemaExport;
> import com.construction.beans.PersonalInfo;
> public class DBUtil 
> {
> 	
> 	private SessionFactory sf;
> 	private static DBUtil ed=null;
> 	
> 	public static DBUtil create()
> 	{
> 		
> 	
> 		if(ed==null)
> 		{
> 			ed=new DBUtil();
> 			System.out.println("instance created");
> 		}
> 		return ed;
> 	}
> 	
> 	private DBUtil()
> 	{
> 		
> 		String path=System.getProperty("user.dir")+File.separator+"config"+File.separator;
> 		File f=new File(path+"hibernate.cfg.xml");
> 		Configuration cfg=new Configuration().configure(f);
> 		sf=cfg.buildSessionFactory();
> 		//new SchemaExport(cfg).create(true,true);
> 		
> 	}
> 	//create 
> 	public void save(Object o)
> 	{
> 		Session session = sf.openSession();
> 		try
> 		{
> 		
> 		session.save(o);
> 		System.out.println("Save session Object" + o);
> 		session.beginTransaction().commit();
> 		}
> 		catch(Exception e)
> 		{
> 			System.out.println("Inside Exception=========>");
> 			e.printStackTrace();
> 			session.beginTransaction().rollback();
> 		}
> 		finally
> 		{
> 			session.close();
> 		}
> 	}
> 	
> 	public void update(Object o)
> 	{
> 		Session session=sf.openSession();
> 		try
> 		{
> 		session.update(o);
> 		session.beginTransaction().commit();
> 		}
> 		catch(Exception e)
> 		{
> 			session.beginTransaction().rollback();
> 		}
> 		finally
> 		{
> 			session.close();
> 		}
> 	}
> 	public void delete(Object o)
> 	{
> 		Session session=sf.openSession();
> 		try
> 		{
> 		session.delete(o);
> 		session.beginTransaction().commit();
> 		
> 		}
> 		catch(Exception e)
> 		{
> 			session.beginTransaction().rollback();
> 		}
> 		finally
> 		{
> 			session.close();
> 		}
> 	}
> 	
> 	public List getLoginFormDetails()
> 	{
> 		Session session=sf.openSession();
> 		List l = session.createCriteria(LoginForm.class).list();
> 		return l;
> 	}
> 	public List getPersonalInfoDetails()
> 	{
> 		Session session=sf.openSession();
> 		List l = session.createCriteria(PersonalInfo.class).list();
> 		System.out.println("DBUtil: -----> listsize" + l.size());
> 		return l;
> 	}
> }
> My servlet Class:
> package com.construction.Servlets;
> import java.io.*;
> import java.util.Iterator;
> import java.util.List;
> import javax.servlet.ServletException;
> import javax.servlet.http.*;
> import com.construction.DB.DBInit;
> import com.construction.DB.DBUtil;
> import com.construction.beans.*;
> public class AddPersonalInfo extends HttpServlet
> {
> 	
> 	 DBUtil util;
> 	protected void doGet(HttpServletRequest httpRequest, HttpServletResponse httpResponse)
> 			throws ServletException, IOException
> 		{
> 	
> 		//To set the content type for the server 
> 		//httpResponse.setContentType("text/html");
> 		savePersonalInfo(httpRequest);
> 		//Getting the data from the server and print the data into
> 		//the browser.
> 	//	PrintWriter print = httpResponse.getWriter();
> 		
> 		
> 	}
> 		
>        public void savePersonalInfo(HttpServletRequest httpRequest)
> 	{
> 		/* 
> 		 * Get the employee personal information from the user and 
> 		 * set it into the PersonalInfo 
> 		 */
> 		PersonalInfo personalInfo = new PersonalInfo();
>         
> 		  //personalInfo.setEmp_code(Long.parseLong(httpRequest.getParameter("emp_code")));
> 		//personalInfo.setEmp_code(001);
> 		personalInfo.setEmployee_Name(httpRequest.getParameter("employee_Name"));
> 		personalInfo.setFather_Name(httpRequest.getParameter("father_Name"));
> 		personalInfo.setMother_Name(httpRequest.getParameter("mother_Name"));
> 		personalInfo.setDob(httpRequest.getParameter("dob"));
> 		personalInfo.setGender(httpRequest.getParameter("gender"));
> 		personalInfo.setMarital_status(httpRequest.getParameter("marital_status"));
> 		personalInfo.setBloodgroup(httpRequest.getParameter("bloodgroup"));
> 		personalInfo.setQualification(httpRequest.getParameter("qualification"));
> 		personalInfo.setAddress(httpRequest.getParameter("address"));
> 		personalInfo.setEmail(httpRequest.getParameter("email"));
> 		personalInfo.setMobileno(httpRequest.getParameter("mobileno"));
> 		personalInfo.setEmpPhoto(httpRequest.getParameter("empPhoto"));
> 		System.out.println("Get Emp Name"+personalInfo.getEmployee_Name() );
> 		System.out.println("Get Father Name"+personalInfo.getFather_Name());
> 		
> 		/* 
> 		 * Get the employee salary details from the user and 
> 		 * set it into the SalaryInfo 
> 		 */
> 		
> 		SalaryInfo salaryInfo = new SalaryInfo();
> 		//salaryInfo.setEmp_code(001);
> 		/*salaryInfo.setEmpno(httpRequest.getParameter("empno"));
> 		salaryInfo.setDoj(httpRequest.getParameter("doj"));
> 		salaryInfo.setDesignation(httpRequest.getParameter("designation"));
> 		salaryInfo.setAccountno(httpRequest.getParameter("accountno"));
> 		salaryInfo.setBasic(httpRequest.getParameter("basic"));
> 		salaryInfo.setAllowance(httpRequest.getParameter("allowance"));
> 		salaryInfo.setOt_per_hour(httpRequest.getParameter("ot_per_hour"));
> 		salaryInfo.setPfno(httpRequest.getParameter("pfno"));
> 		salaryInfo.setEsicno(httpRequest.getParameter("esicno"));
> 		salaryInfo.setMem_UHID(httpRequest.getParameter("mem_UHID"));
> 		salaryInfo.setLicno(httpRequest.getParameter("licno"));	
> 		System.out.println("Get Emp Name"+salaryInfo.getEmpno());
> 		System.out.println("Get Father Name"+salaryInfo.getDoj());*/
> 		
> 		//set the salary details into the personalinfo
> 		personalInfo.setSalaryInfo(salaryInfo);
> 		 
> 		//save peronal information to the database
> 		// create the object for the DBUtil 
> 		util = DBUtil.create();
> 		util.save(personalInfo);
> 		util.save(salaryInfo);
> 		System.out.println("Object is creted for DBUtil");
> 		/*if(util != null)
> 			    {
> 	        		
> 					System.out.println("print Util Object" + util);
> 		        	//if(personalInfo != null)
> 		            System.out.println("Save Persional & Salary Information ");
> 		            util.save(personalInfo);
> 		            System.out.println(personalInfo);
> 		        	List list = util.getPersonalInfoDetails();
> 		        	System.out.println("List " + list);
> 		        	System.out.println("List " + list.size());
> 		        	Iterator iterator = list.iterator();
> 		        	 System.out.println("Iterator"+ iterator);
> 		        	  while (iterator.hasNext ()) {
> 		        	    String o = (String) iterator.next ();
> 		        	    System.out.println(o);
> 		        	  }
> 		        	System.out.println("Persional Information is Saved Sucessfully");
> 		        	//util.save(salaryInfo);
> 			    	//System.out.println("Salary Information is Saved Sucessfully");
> 		    }*/
> 	}
> }
>   Please send me the solution for my codings.
>   Thank You!

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the hibernate-issues mailing list