I am getting this error:-
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version). log4j:WARN Please initialize the log4j system properly. Aug 15, 2014 5:19:46 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet UserController threw exception java.lang.ClassNotFoundException: com.dev.beans.PatientDetailsHibernate at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:123) at org.hibernate.cfg.AnnotationConfiguration.parseMappingElement(AnnotationConfiguration.java:647) at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1589) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1568) at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:1047) at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:64) at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1542) at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:1035) at org.hibernate.cfg.AnnotationConfiguration.doConfigure(AnnotationConfiguration.java:64) at org.hibernate.cfg.Configuration.configure(Configuration.java:1462) at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:1017) at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:64) at org.hibernate.cfg.Configuration.configure(Configuration.java:1448) at org.hibernate.cfg.AnnotationConfiguration.configure(AnnotationConfiguration.java:1011) at com.dev.Service.UserService.addpatienDetail(UserService.java:45) at com.dev.controller.UserController.doPost(UserController.java:268) at javax.servlet.http.HttpServlet.service(HttpServlet.java:643) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Unknown Source)
Initial SessionFactory creation failed.org.hibernate.MappingException: Unable to load class declared as <mapping class="com.dev.beans.PatientDetailsHibernate"/> in the configuration:
UTILITY CLASS IS :-
public class HibernateUtility { private static final SessionFactory sessionFactory;
static { try { // Create the SessionFactory from standard (hibernate.cfg.xml) // config file. sessionFactory = new AnnotationConfiguration().configure() .buildSessionFactory(); } catch (Throwable ex) { // Log the exception. System.err.println("Initial SessionFactory creation failed." + ex); throw new ExceptionInInitializerError(ex); } } public static SessionFactory getSessionFactory() { return sessionFactory; }
public static Session beginTransaction() { Session hibernateSession = HibernateUtility.getSession(); hibernateSession.beginTransaction(); return hibernateSession; }
public static void commitTransaction() { HibernateUtility.getSession().getTransaction().commit(); }
public static void rollbackTransaction() { HibernateUtility.getSession().getTransaction().rollback(); }
public static void closeSession() { HibernateUtility.getSession().close(); }
public static Session getSession() { Session hibernateSession = sessionFactory.getCurrentSession(); return hibernateSession; }
hibernate.cfg.xml is:-
<hibernate-configuration> <session-factory> <property name="hibernate.dialect"> org.hibernate.dialect.OracleDialect </property> <property name="hibernate.connection.driver_class"> oracle.jdbc.driver.OracleDriver </property> <property name="hibernate.connection.url"> jdbc:oracle:thin:@localhost:1521:xe </property> <property name="hibernate.connection.username"> system </property> <property name="hibernate.connection.password"> sys </property> <property name="hibernate.current_session_context_class">thread</property> <mapping class="com.dev.beans.PatientDetailsHibernate"></mapping>
</session-factory> </hibernate-configuration>
and the service class is
public PatientDetailsHibernate addpatienDetail(PatientDetailsHibernate pd) throws SQLException, IOException { try { SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory(); Session hibernateSession = sessionFactory.getCurrentSession(); hibernateSession.beginTransaction(); hibernateSession.save(pd); hibernateSession.getTransaction().commit(); System.out.println("session = "+hibernateSession); System.out.println("in hibernate"); if(hibernateSession.isOpen()) hibernateSession.close(); System.out.println("session = "+hibernateSession); }
can anyone tell me where i am doing wrong.
|