File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Object Relational Mapping and the fly likes Parsing Exception - Hibernate Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "Parsing Exception - Hibernate" Watch "Parsing Exception - Hibernate" New topic

Parsing Exception - Hibernate

Sunoo Varghese

Joined: Sep 11, 2004
Posts: 19

I am getting the following Parsing Exception when i try to run my code using Hibernate.

"The content of element type "class" must match "(meta*,(cache|jcs-cache)?,(id|composite-id),discriminator?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array)*,(subclass*|joined-subclass*))"."

Could someone please give an insight on what the error might be. I think it has to do with something regarding my User.hbm.xml.

The Code is as follows.

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"


<class name="User" table="loginInfo">
<property name="userName" column="user_name"/>
<property name="password" column="password"/>
<property name="accountNumber" column="account_number"/>


<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/accountsDB</property>
<property name="connection.username">root</property>
<property name="connection.password">satyam</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">2</property>
<!-- SQL dialect -->
<property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<mapping resource="User.hbm.xml"/>

==================================== ================================
And i get my session factory object by doing...

sessionFactory = new Configuration().configure().buildSessionFactory();

Thanks & Regards,
Paul Sturrock

Joined: Apr 14, 2004
Posts: 10336

What you are seeing is the message you get when an piece of XML does not satisfy the structure defined in its DTD. If you look at hibernate-mapping-2.0.dtd you should be able to see what your XML file should look like. The fisrt thing I notice is your <class /> element (in User.hbm.xml) does not contain an <id /> element.

JavaRanch FAQ HowToAskQuestionsOnJavaRanch
I agree. Here's the link:
subject: Parsing Exception - Hibernate
jQuery in Action, 3rd edition