-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: EhCache Mapping problem
PostPosted: Tue Jul 12, 2005 2:31 pm 
Newbie

Joined: Thu Jul 07, 2005 1:51 pm
Posts: 15
Need help with Hibernate? Read this first:
http://www.hibernate.org/ForumMailingli ... AskForHelp

Hibernate version:

3.0


Mapping documents:

WQSample.hbm.xml:

Code:
<?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="net.hatfieldgroup.rampv2.biz.wq.WQSample" table="WQSAMPLE">
      <id name="sampleID" column="sampleID" type="java.lang.Long">
         <generator class="native" />
      </id>
      <cache usage="read-only" />
      <property name="samplingDate" type="java.sql.Timestamp" />
      <property name="detectionLimit" type="double" />
      <property name="resultQualifier" type="java.lang.String" />
      <property name="result" type="double" />
      <property name="lab" type="java.lang.String" />
      <property name="analyticalMethod" type="java.lang.String" />
      <many-to-one name="analyte" class="net.hatfieldgroup.rampv2.biz.wq.WQAnalyte" column="analyteID"/> 
<!--   <many-to-one name="siteID" class="net.hatfieldgroup.rampv2.biz.wq.WQSite" column="siteID"/> -->
   </class>

</hibernate-mapping>


hibernate.cfg.xml:

Code:
<?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="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/rampv2</property>
        <property name="hibernate.connection.username">rampv2user</property>
        <property name="hibernate.connection.password">r4mp0R</property>
        <property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
        <property name="show_sql">true</property>
        <property name="transaction.factory_class">
             org.hibernate.transaction.JDBCTransactionFactory
        </property>
      <property name="hibernate.cache.provider_class">
         net.sf.ehcache.hibernate.Provider
      </property>
      <property name="hibernate.cache.use_query_cache">true</property>

<!--        <property name="hibernate.cache.provider_class">
             org.hibernate.cache.HashtableCacheProvider
        </property>

-->

        <property name="hibernate.hbm2ddl.auto">update</property>
      <property name="hibernate.cglib.use_reflection_optimizer">true</property>

      <mapping resource="net/hatfieldgroup/rampv2/biz/wq/WQAnalyte.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/wq/WQSample.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/wq/WQSite.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/sed/SedAnalyte.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/sed/SedSample.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/sed/SedSite.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/Lease.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/Waterbody.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/auth/RampUser.hbm.xml"/>
      <mapping resource="net/hatfieldgroup/rampv2/biz/lookup/UserRoles.hbm.xml"/>
    </session-factory>

</hibernate-configuration>



Full stack trace of any exception that occurs:

Code:
Initial SessionFactory creation failed.org.hibernate.MappingException: Error reading resource: net/hatfieldgroup/rampv2/biz/wq/WQSample.hbm.xml
org.hibernate.MappingException: Error reading resource: net/hatfieldgroup/rampv2/biz/wq/WQSample.hbm.xml
   at org.hibernate.cfg.Configuration.addResource(Configuration.java:452)
   at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1263)
   at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1235)
   at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1217)
   at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1184)
   at org.hibernate.cfg.Configuration.configure(Configuration.java:1112)
   at org.hibernate.cfg.Configuration.configure(Configuration.java:1098)
   at net.hatfieldgroup.rampv2.db.HibernateSession.<clinit>(HibernateSession.java:17)
   at net.hatfieldgroup.rampv2.biz.wq.WQQueryManager.<init>(WQQueryManager.java:20)
   at net.hatfieldgroup.rampv2.actions.WQResultAction.execute(WQResultAction.java:29)
   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.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704)
   at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474)
   at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
   at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
   at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
   at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
   at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
   at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
   at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
   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: org.hibernate.MappingException: invalid mapping
   at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:399)
   at org.hibernate.cfg.Configuration.addResource(Configuration.java:449)
   ... 54 more
Caused by: org.xml.sax.SAXParseException: The content of element type "class" must match "(meta*,subselect?,cache?,synchronize*,comment?,(id|composite-id),discriminator?,natural-id?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|properties|any|map|set|list|bag|idbag|array|primitive-array|query-list)*,((join*,subclass*)|joined-subclass*|union-subclass*),loader?,sql-insert?,sql-update?,sql-delete?,filter*)".
   at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
   at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
   at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
   at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
   at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown Source)
   at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown Source)
   at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
   at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
   at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
   at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
   at org.dom4j.io.SAXReader.read(SAXReader.java:465)
   at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:398)
   ... 55 more



Name and version of the database you are using:

mySQL 4.1


If I take the line "<cache usage="read-only" /> " out of WQSample.hbm.xml I don't get this error anymore. Is there something wrong with this entry?


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 2:35 pm 
Expert
Expert

Joined: Wed Apr 06, 2005 5:03 pm
Posts: 273
Location: Salt Lake City, Utah, USA
Put the <cache> tag before the <id> tag


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 2:45 pm 
Newbie

Joined: Thu Jul 07, 2005 1:51 pm
Posts: 15
did that, now I'm getting the following exception:

Code:
Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: net/sf/hibernate/cache/CacheProvider
java.lang.NoClassDefFoundError: net/sf/hibernate/cache/CacheProvider
   at java.lang.ClassLoader.defineClass1(Native Method)
   at java.lang.ClassLoader.defineClass(Unknown Source)
   at java.security.SecureClassLoader.defineClass(Unknown Source)
   at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1634)
   at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:860)
   at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1307)
   at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
   at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:102)
   at org.hibernate.cfg.SettingsFactory.createCacheProvider(SettingsFactory.java:323)
   at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:219)
   at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1463)
   at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1004)
   at net.hatfieldgroup.rampv2.db.HibernateSession.<clinit>(HibernateSession.java:17)
   at net.hatfieldgroup.rampv2.biz.mgr.UserManager.getRolesList(UserManager.java:20)
   at net.hatfieldgroup.rampv2.actions.AddUserAction.execute(AddUserAction.java:28)
   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)


But as you can see, in my hibernate.cfg.xml file, the cache provider is set as net.sf.ehcache.hibernate.Provider, yet it's still looking for net/sf/hibernate/cache/CacheProvider. Is there another reference to this cache provider that I need to remove from somewhere?


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jul 12, 2005 3:17 pm 
Expert
Expert

Joined: Fri Feb 06, 2004 7:49 am
Posts: 255
Location: Moscow, Russia
http://www.hibernate.org/hib_docs/v3/reference/en/html/performance.html#performance-cache

There is a package refactoring In Hibernate 3.0. Everything from net.sf.hibernate package moved into org.hibernate.

In your hibernate.cfg.xml replace this:
Code:
<property name="hibernate.cache.provider_class">
         net.sf.ehcache.hibernate.Provider !!! INCORRECT in Hibernate 3.0
</property


by this:
Code:
<property name="hibernate.cache.provider_class">
         org.hibernate.cache.EhCacheProvider
</property>

_________________
Leonid Shlyapnikov


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.