Bonjour,
Je débute un projet basé sur les technologies Eclipse, Struts, Hibernate, MySQL et Tomcat. Pour l'instant ma base de données est constituée de 2 classes : contact et adresse. J'arrive actuellement à enregistrer un contact dans la base (la classe contact est donc correctement mappée), toutefois si j'essaie de lister les enregistrements de la table une erreur grave survient et m'informe que la classe contact n'est pas mappée.
J'ai regardé les différents sujets de ce forum, mais n'est pas trouvée trace de l'existence de ce problème.
Merci pour votre aide,
Cédric
Hibernate.cfg.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.datasource">java:comp/env/jdbc/annuaire</property>
<property name="show_sql">true</property>
<property name="hibernate.cglib.use_reflection_optimizer">true</property>
<property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.session_factory_name">java:hibernate/SessionFactory</property>
<!-- mapping files -->
<mapping resource="com/cedric/annuaire/hibernate/pojo/contact.hbm.xml" />
<mapping resource="com/cedric/annuaire/hibernate/pojo/adresse.hbm.xml" />
</session-factory>
</hibernate-configuration>
adresse.hbm.xml
<?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="com.cedric.annuaire.hibernate.pojo.Contact"
table="contact">
<id name="id" column="ctc_id">
<generator class="assigned"/>
</id>
<property name="nom"
column="ctc_nom"
type="string"
length="45"
not-null="true"/>
<property name="prenom"
column="ctc_prenom"
type="string"
length="45"
not-null="true"/>
<set name="adresses" inverse="true">
<key column="ctc_id" not-null="true"/>
<one-to-many class="com.cedric.annuaire.hibernate.pojo.Adresse" />
</set>
</class>
</hibernate-mapping>
Log Tomcat au lancement de l'application :
7 sept. 2005 09:53:46 org.apache.coyote.http11.Http11Protocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
7 sept. 2005 09:53:47 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 2533 ms
7 sept. 2005 09:53:47 org.apache.catalina.core.StandardService start
INFO: Démarrage du service Catalina
7 sept. 2005 09:53:47 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.0.28
7 sept. 2005 09:53:47 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
7 sept. 2005 09:53:47 org.apache.catalina.core.StandardHost getDeployer
INFO: Create Host deployer for direct deployment ( non-jmx )
7 sept. 2005 09:53:47 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Software\jakarta-tomcat-5.0.28\conf\Catalina\localhost\admin.xml
7 sept. 2005 09:53:49 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
7 sept. 2005 09:53:49 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
7 sept. 2005 09:53:50 org.apache.struts.util.PropertyMessageResources <init>
INFO: Initializing, config='org.apache.webapp.admin.ApplicationResources', returnNull=true
7 sept. 2005 09:53:53 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Software\jakarta-tomcat-5.0.28\conf\Catalina\localhost\annuaire.xml
7 sept. 2005 09:53:54 org.apache.struts.validator.ValidatorPlugIn initResources
INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
7 sept. 2005 09:53:54 org.apache.struts.validator.ValidatorPlugIn initResources
INFO: Loading validation rules file from '/WEB-INF/validation.xml'
7 sept. 2005 09:53:55 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Software\jakarta-tomcat-5.0.28\conf\Catalina\localhost\balancer.xml
7 sept. 2005 09:53:55 org.apache.catalina.core.StandardHostDeployer install
INFO: Processing Context configuration file URL file:C:\Software\jakarta-tomcat-5.0.28\conf\Catalina\localhost\manager.xml
7 sept. 2005 09:53:56 org.apache.catalina.core.StandardHostDeployer install
INFO: Installation d'une application pour le chemin de contexte /jsp-examples depuis l'URL file:C:\Software\jakarta-tomcat-5.0.28\webapps\jsp-examples
7 sept. 2005 09:53:56 org.apache.catalina.core.StandardHostDeployer install
INFO: Installation d'une application pour le chemin de contexte depuis l'URL file:C:\Software\jakarta-tomcat-5.0.28\webapps\ROOT
7 sept. 2005 09:53:57 org.apache.catalina.core.StandardHostDeployer install
INFO: Installation d'une application pour le chemin de contexte /servlets-examples depuis l'URL file:C:\Software\jakarta-tomcat-5.0.28\webapps\servlets-examples
7 sept. 2005 09:53:57 org.apache.catalina.core.StandardHostDeployer install
INFO: Installation d'une application pour le chemin de contexte /tomcat-docs depuis l'URL file:C:\Software\jakarta-tomcat-5.0.28\webapps\tomcat-docs
7 sept. 2005 09:53:57 org.apache.catalina.core.StandardHostDeployer install
INFO: Installation d'une application pour le chemin de contexte /webdav depuis l'URL file:C:\Software\jakarta-tomcat-5.0.28\webapps\webdav
7 sept. 2005 09:53:57 org.apache.coyote.http11.Http11Protocol start
INFO: Démarrage de Coyote HTTP/1.1 sur http-8080
7 sept. 2005 09:53:58 org.apache.jk.common.ChannelSocket init
INFO: JK2: ajp13 listening on /0.0.0.0:8009
7 sept. 2005 09:53:58 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=20/70 config=C:\Software\jakarta-tomcat-5.0.28\conf\jk2.properties
7 sept. 2005 09:53:58 org.apache.catalina.startup.Catalina start
INFO: Server startup in 11747 ms
Code de ma classe ListerContactAction
Code:
package com.cedric.annuaire.struts.annuaire;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.cedric.annuaire.hibernate.dao.ContactDAO;
public class ListerContactAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
List listeContact=ContactDAO.listerContact();
((AnnuaireForm)form).setListeContact(listeContact);
return mapping.findForward("success");
}
}
Code de la classe : ContactDAOCode:
package com.cedric.annuaire.hibernate.dao;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.cedric.annuaire.hibernate.HibernateHelper;
import com.cedric.annuaire.hibernate.pojo.Adresse;
import com.cedric.annuaire.hibernate.pojo.Contact;
public class ContactDAO {
public static List listerContact() {
Session session=HibernateHelper.currentSession();
Transaction tx=session.beginTransaction();
List result=session.createQuery("from contact").list();
tx.commit();
HibernateHelper.closeSession();
return result;
}
public static void enregistrerContact(Contact c) {
Session session=HibernateHelper.currentSession();
Transaction tx=null;
try {
tx=session.beginTransaction();
session.save(c);
tx.commit();
}
catch(HibernateException he) {
if(null!=tx) tx.rollback();
throw he;
}
finally {
HibernateHelper.closeSession();
}
}
public static void ajouterAdresse(Contact c, Adresse a) {
Session session=HibernateHelper.currentSession();
Transaction tx=null;
try {
tx = session.beginTransaction();
/* TODO */
tx.commit();
}
catch(HibernateException he) {
if(null!=tx) tx.rollback();
throw he;
}
finally {
HibernateHelper.closeSession();
}
}
}
Log exception à l'exécution
7 sept. 2005 10:06:30 org.hibernate.cfg.Environment <clinit>
INFO: Hibernate 3.0.5
7 sept. 2005 10:06:30 org.hibernate.cfg.Environment <clinit>
INFO: hibernate.properties not found
7 sept. 2005 10:06:30 org.hibernate.cfg.Environment <clinit>
INFO: using CGLIB reflection optimizer
7 sept. 2005 10:06:30 org.hibernate.cfg.Environment <clinit>
INFO: using JDK 1.4 java.sql.Timestamp handling
7 sept. 2005 10:06:30 org.hibernate.cfg.Configuration configure
INFO: configuring from resource: /hibernate.cfg.xml
7 sept. 2005 10:06:30 org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: Configuration resource: /hibernate.cfg.xml
7 sept. 2005 10:06:31 org.hibernate.cfg.Configuration addResource
INFO: Mapping resource: com/cedric/annuaire/hibernate/pojo/contact.hbm.xml
7 sept. 2005 10:06:31 org.hibernate.cfg.HbmBinder bindRootPersistentClassCommonValues
INFO: Mapping class: com.cedric.annuaire.hibernate.pojo.Contact -> contact
7 sept. 2005 10:06:31 org.hibernate.cfg.Configuration addResource
INFO: Mapping resource: com/cedric/annuaire/hibernate/pojo/adresse.hbm.xml
7 sept. 2005 10:06:31 org.hibernate.cfg.HbmBinder bindRootPersistentClassCommonValues
INFO: Mapping class: com.cedric.annuaire.hibernate.pojo.Adresse -> adresse
7 sept. 2005 10:06:32 org.hibernate.cfg.Configuration doConfigure
INFO: Configured SessionFactory: null
7 sept. 2005 10:06:32 org.hibernate.cfg.Configuration secondPassCompile
INFO: processing extends queue
7 sept. 2005 10:06:32 org.hibernate.cfg.Configuration secondPassCompile
INFO: processing collection mappings
7 sept. 2005 10:06:32 org.hibernate.cfg.HbmBinder bindCollectionSecondPass
INFO: Mapping collection: com.cedric.annuaire.hibernate.pojo.Contact.adresses -> adresse
7 sept. 2005 10:06:32 org.hibernate.cfg.Configuration secondPassCompile
INFO: processing association property references
7 sept. 2005 10:06:32 org.hibernate.cfg.Configuration secondPassCompile
INFO: processing foreign key constraints
7 sept. 2005 10:06:32 org.hibernate.util.NamingHelper getInitialContext
INFO: JNDI InitialContext properties:{}
7 sept. 2005 10:06:32 org.hibernate.connection.DatasourceConnectionProvider configure
INFO: Using datasource: java:comp/env/jdbc/annuaire
7 sept. 2005 10:06:32 org.hibernate.cfg.SettingsFactory buildSettings
INFO: RDBMS: MySQL, version: 5.0.11-beta-nt
7 sept. 2005 10:06:32 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-3.1.10 ( $Date: 2005/05/19 15:52:23 $, $Revision: 1.1.2.2 $ )
7 sept. 2005 10:06:33 org.hibernate.dialect.Dialect <init>
INFO: Using dialect: org.hibernate.dialect.MySQLDialect
7 sept. 2005 10:06:33 org.hibernate.transaction.TransactionFactoryFactory buildTransactionFactory
INFO: Using default transaction strategy (direct JDBC transactions)
7 sept. 2005 10:06:33 org.hibernate.transaction.TransactionManagerLookupFactory getTransactionManagerLookup
INFO: No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic flush during beforeCompletion(): disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic session close at end of transaction: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC batch size: 15
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC batch updates for versioned data: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Scrollable result sets: enabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC3 getGeneratedKeys(): enabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Connection release mode: null
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Maximum outer join fetch depth: 2
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default batch fetch size: 1
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Generate SQL with comments: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Order SQL updates by primary key: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory createQueryTranslatorFactory
INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
7 sept. 2005 10:06:33 org.hibernate.hql.ast.ASTQueryTranslatorFactory <init>
INFO: Using ASTQueryTranslatorFactory
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query language substitutions: {}
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Second-level cache: enabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query cache: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory createCacheProvider
INFO: Cache provider: org.hibernate.cache.EhCacheProvider
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Optimize cache for minimal puts: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Structured second-level cache entries: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Echoing all SQL to stdout
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Statistics: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Deleted entity synthetic identifier rollback: disabled
7 sept. 2005 10:06:33 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default entity-mode: pojo
7 sept. 2005 10:06:34 org.hibernate.impl.SessionFactoryImpl <init>
INFO: building session factory
7 sept. 2005 10:06:35 org.hibernate.impl.SessionFactoryObjectFactory addInstance
INFO: Factory name: java:hibernate/SessionFactory
7 sept. 2005 10:06:35 org.hibernate.util.NamingHelper getInitialContext
INFO: JNDI InitialContext properties:{}
7 sept. 2005 10:06:35 org.hibernate.util.NamingHelper bind
INFO: Creating subcontext: java:hibernate
7 sept. 2005 10:06:35 org.hibernate.impl.SessionFactoryObjectFactory addInstance
ATTENTION: Could not bind factory to JNDI
javax.naming.NamingException: Le Contexte est en lecture seule
at org.apache.naming.NamingContext.checkWritable(NamingContext.java:901)
at org.apache.naming.NamingContext.createSubcontext(NamingContext.java:515)
at org.apache.naming.NamingContext.createSubcontext(NamingContext.java:536)
at org.apache.naming.SelectorContext.createSubcontext(SelectorContext.java:421)
at javax.naming.InitialContext.createSubcontext(Unknown Source)
at org.hibernate.util.NamingHelper.bind(NamingHelper.java:69)
at org.hibernate.impl.SessionFactoryObjectFactory.addInstance(SessionFactoryObjectFactory.java:90)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:260)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1005)
at com.cedric.annuaire.hibernate.HibernateHelper.<clinit>(HibernateHelper.java:18)
at com.cedric.annuaire.hibernate.dao.ContactDAO.listerContact(ContactDAO.java:16)
at com.cedric.annuaire.struts.annuaire.ListerContactAction.execute(ListerContactAction.java:22)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Unknown Source)
7 sept. 2005 10:06:35 org.hibernate.impl.SessionFactoryImpl checkNamedQueries
INFO: Checking 0 named queries
7 sept. 2005 10:06:36 org.hibernate.hql.ast.ErrorCounter reportError
GRAVE: *** ERROR: contact is not mapped.
7 sept. 2005 10:06:36 org.apache.struts.action.RequestProcessor processException
ATTENTION: Unhandled Exception thrown: class org.hibernate.hql.ast.QuerySyntaxError
StandardWrapperValve[action]: "Servlet.service()" pour la servlet action a généré une exception
org.hibernate.hql.ast.QuerySyntaxError: contact is not mapped. [from contact]
at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:63)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:196)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:130)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:83)
at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:427)
at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:834)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
at com.cedric.annuaire.hibernate.dao.ContactDAO.listerContact(ContactDAO.java:18)
at com.cedric.annuaire.struts.annuaire.ListerContactAction.execute(ListerContactAction.java:22)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Unknown Source)
Caused by: contact is not mapped.
at org.hibernate.hql.ast.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:85)
at org.hibernate.hql.ast.FromElementFactory.addFromElement(FromElementFactory.java:77)
at org.hibernate.hql.ast.FromClause.addFromElement(FromClause.java:67)
at org.hibernate.hql.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:217)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:2830)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:2719)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:513)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:371)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:201)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:151)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:189)
... 38 more