[jboss-user] [Installation, Configuration & Deployment] - "ClassNotFoundException" During Hibernate JBOSS Deployment

cdub do-not-reply at jboss.com
Tue Sep 22 23:31:16 EDT 2009


I am getting a "ClassNotFoundException" for a "composite-id" element in a hibernate mapping file during deployment of a hibernate app even though the class in question does correctly exist in the GGGoMobile.jar file. 

I am using NetBeans 6.7.1 Hibernate utilities to reverse engineer a MySQL 5 database and generate the mapping files, JBOSS 5.1.0, and Hibernate 3.3.1.

Application Structure:

  | GGGoMobile.ear
  |      +META-INF
  |           + gggomobile-hibernate.xml   
  |           + application.xml   
  |           + jboss-app.xml 
  |      +GGGoMobileLib.jar  (contains all hibernate mapping files and compiled .class files)
  | 
  | ... other JAR and WAR files
  | 

Hibernate 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">
  | <!-- Generated Sep 21, 2009 5:32:06 PM by Hibernate Tools 3.2.1.GA -->
  | <hibernate-mapping>
  |     <class name="com.clarksonville.gm.lib.data.GmStoreAdKeyword" table="gm_store_ad_keyword" catalog="gggomobiledb">
  |         <composite-id name="id" class="com.clarksonville.gm.lib.data.GmStoreAdKeywordId">
  |             <key-property name="adKeywordId" type="int">
  |                 <column name="ad_keyword_id" />
  |             </key-property>
  |             <key-property name="storeAdId" type="int">
  |                 <column name="store_ad_id" />
  |             </key-property>
  |         </composite-id>
  |         <many-to-one name="gmStoreAd" class="com.clarksonville.gm.lib.data.GmStoreAd" update="false" insert="false" fetch="select">
  |             <column name="store_ad_id" not-null="true" />
  |         </many-to-one>
  |         <many-to-one name="gmAdKeyword" class="com.clarksonville.gm.lib.data.GmAdKeyword" update="false" insert="false" fetch="select">
  |             <column name="ad_keyword_id" not-null="true" />
  |         </many-to-one>
  |         <property name="keywordBid" type="java.lang.Float">
  |             <column name="keyword_bid" precision="12" scale="0" />
  |         </property>
  |     </class>
  | </hibernate-mapping>
  | 

gggomobile-hibernate.xml

  | <hibernate-configuration xmlns="urn:jboss:hibernate-deployer:1.0">
  |    <session-factory name="java:/hibernate/GGGoMobileSessionFactory" bean="jboss.gggomobile:name=GGGoMobileSessionFactory">
  |       <property name="datasourceName">java:/GGGoMobileDS</property>
  |       <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
  |       <depends>jboss:service=Naming</depends>
  |       <depends>jboss:service=TransactionManager</depends>
  |    </session-factory>
  | </hibernate-configuration>
  | 

Error Stack Trace:

  | 11:41:39,435 ERROR [AbstractKernelController] Error installing to Start: name=jboss.gggomobile:name=GGGoMobileSessionFactory state=Create
  | org.hibernate.MappingException: component class not found: com.clarksonville.gm.lib.data.GmStoreAdKeywordId
  |         at org.hibernate.mapping.Component.getComponentClass(Component.java:127)
  |         at org.hibernate.tuple.component.PojoComponentTuplizer.buildGetter(PojoComponentTuplizer.java:156)
  |         at org.hibernate.tuple.component.AbstractComponentTuplizer.<init>(AbstractComponentTuplizer.java:66)
  |         at org.hibernate.tuple.component.PojoComponentTuplizer.<init>(PojoComponentTuplizer.java:61)
  |         at org.hibernate.tuple.component.ComponentEntityModeToTuplizerMapping.<init>(ComponentEntityModeToTuplizerMapping.java:76)
  | 
  | ... 
  | 
  | Caused by: java.lang.ClassNotFoundException: com.clarksonville.gm.lib.data.GmStoreAdKeywordId from BaseClassLoader at 6dcfde{VFSClassLoaderPolicy at 16a3075{name=vfsfile:/C:/JBoss/jboss-5.1.0.GA/server/default/conf/jboss-service.xml domain=ClassLoaderDomain at 16877f8{name=DefaultDomain parentPolicy=BEFORE parent=org.jboss.bootstrap.NoAnnotationURLClassLoader at 867e89 ...
  | 
  |         at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:448)
  |         at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
  |         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
  |         at java.lang.Class.forName0(Native Method)
  |         at java.lang.Class.forName(Class.java:169)
  |         at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:123)
  |         at org.hibernate.mapping.Component.getComponentClass(Component.java:124)
  |         ... 72 more
  | 

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4256518#4256518

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4256518



More information about the jboss-user mailing list