> Could not initialize class
> org.hibernate.annotations.common.reflection.java.JavaReflectionManager

It looks like you need to add a dependency to hibernate annotations.

Josh

On Fri, Feb 25, 2011 at 10:26 AM, dwi ardi irawan
<penyihirke...@gmail.com> wrote:
> I'm using Tapestry 5.2.4 and Hibernate 3.6
>
> These are the steps in my Tapestry-Hibernate
> I just want to display an address table.
>
> But I got an error:
> Exception constructing service 'ValueEncoderSource': Error invoking service
> builder method
> org.apache.tapestry5.services.TapestryModule.buildValueEncoderSource(Map,
> InvalidationEventHub)
> (at TapestryModule.java:2287) (for service 'ValueEncoderSource'): Error
> invoking service contribution method
> org.apache.tapestry5.hibernate.HibernateModule.contributeValueEncoderSource(MappedConfiguration,
>
> boolean, HibernateSessionSource, Session, TypeCoercer, PropertyAccess,
> LoggerSource): Exception constructing service 'HibernateSessionSource':
> Error invoking service builder method
> org.apache.tapestry5.hibernate.HibernateCoreModule.buildHibernateSessionSource(Logger,
>
> List, RegistryShutdownHub) (at HibernateCoreModule.java:123) (for service
> 'HibernateSessionSource'):
> Could not initialize class
> org.hibernate.annotations.common.reflection.java.JavaReflectionManager
>
> My questions are:
> 1. Did I miss something to configure
> 2. How did tapestry load hibernate.cfg.xml for the first time?
> 3. Most of the example out there is using tapestry 5.1 and Hibernate < 3.6
> version
>
> Could anyone help me, please....
>
> *STEP BY STEP :
>
> **1. pom.xml*
>
> I added :
>    <dependency>
>        <groupId>org.apache.tapestry</groupId>
>        <artifactId>tapestry-hibernate</artifactId>
>        <version>${tapestry-release-version}</version>
>    </dependency>
>
>    <dependency>
>        <groupId>org.hibernate</groupId>
>        <artifactId>hibernate-core</artifactId>
>        <version>3.6.0.Final</version>
>    </dependency>
>    <dependency>
>        <groupId>net.sf.ehcache</groupId>
>        <artifactId>ehcache-core</artifactId>
>        <version>2.2.0</version>
>    </dependency>
>    <dependency>
>        <groupId>mysql</groupId>
>        <artifactId>mysql-connector-java</artifactId>
>        <version>5.1.15</version>
>    </dependency>
>
> *2. Address.java*
>
> import javax.persistence.Entity;
> import javax.persistence.GeneratedValue;
> import javax.persistence.GenerationType;
> import javax.persistence.Id;
> import javax.persistence.Table;
>
> import org.apache.tapestry5.beaneditor.NonVisual;
> import org.apache.tapestry5.beaneditor.Validate;
>
> @Entity
> @Table(name="hello")
> public class Address {
>    @Id
>    @GeneratedValue(strategy = GenerationType.IDENTITY)
>    @NonVisual
>
>    private Long id;
>
>    @Validate("required")
>    private String firstName;
>
>    private String lastName;
>    private String street1;
>    private String street2;
>
>    @Validate("required")
>    private String city;
>
>    private String state;
>
>    @Validate("required,regexp")
>    private String zip;
>
>    private String email;
>    private String phone;
>
>    public Long getId() {
>        return id;
>    }
>    public void setId(Long id) {
>        this.id = id;
>    }
>
>    public String getFirstName() {
>        return firstName;
>    }
>    public void setFirstName(String firstName) {
>        this.firstName = firstName;
>    }
>
>    public String getLastName() {
>        return lastName;
>    }
>    public void setLastName(String lastName) {
>        this.lastName = lastName;
>    }
>
>    public String getStreet1() {
>        return street1;
>    }
>    public void setStreet1(String street1) {
>        this.street1 = street1;
>    }
>
>    public String getStreet2() {
>        return street2;
>    }
>    public void setStreet2(String street2) {
>        this.street2 = street2;
>    }
>
>    public String getCity() {
>        return city;
>    }
>    public void setCity(String city) {
>        this.city = city;
>    }
>
>    public String getState() {
>        return state;
>    }
>    public void setState(String state) {
>        this.state = state;
>    }
>
>    public String getZip() {
>        return zip;
>    }
>    public void setZip(String zip) {
>        this.zip = zip;
>    }
>
>    public String getEmail() {
>        return email;
>    }
>    public void setEmail(String email) {
>        this.email = email;
>    }
>
>    public String getPhone() {
>        return phone;
>    }
>    public void setPhone(String phone) {
>        this.phone = phone;
>    }
>
> }
>
> *3. HibernateExamplePage.tml*
>
> <t:grid source="addresses"/>
>
> *4. HibernateExamplePage.java*
>
> import org.apache.tapestry5.ioc.annotations.Inject;
> import org.hibernate.Session;
> import org.makeasoup.tapestryboard.beans.Address;
>
> public class HibernatePage {
>    @Inject
>    private Session session;
>
>    public List<Address> getAddresses()
>    {
>        return session.createCriteria(Address.class).list();
>    }
>
> }
>
> *5. Hibernate.cfg.xml*
>
> <!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/tapestryboard</property>
>        <property
> name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
>        <property name="hibernate.connection.username">root</property>
>        <property name="hibernate.connection.password"></property>
>        <property name="hbm2ddl.auto">update</property>
>        <property name="hibernate.show_sql">true</property>
>        <property name="hibernate.format_sql">true</property>
>
>
>    </session-factory>
> </hibernate-configuration>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to