It's not a secret anymore!*
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


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "Parsing Exception - Hibernate" Watch "Parsing Exception - Hibernate" New topic
Author

Parsing Exception - Hibernate

Sunoo Varghese
Greenhorn

Joined: Sep 11, 2004
Posts: 19
Hi,

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.

===================================User.hbm.xml============================
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">

<hibernate-mapping>

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


==============================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>
<!-- 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"/>
</session-factory>
</hibernate-configuration>

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

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


Thanks & Regards,
Sunoo
Paul Sturrock
Bartender

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
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Parsing Exception - Hibernate
 
Similar Threads
Could not parse mapping document hbm.xml
query on Hibernate
Not Store data in oracle db
Sybase stored proc error
Hibernate Oracle problem