-->
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.  [ 2 posts ] 
Author Message
 Post subject: PropertyAccessException setting property value error ???
PostPosted: Wed Sep 17, 2003 9:20 pm 
Newbie

Joined: Mon Sep 15, 2003 12:33 am
Posts: 3
Location: Brisbane - Australia
I'm getting the PropertyAccessException exception which provides not great help. The mapping, code, and trace are below if anyone could help me understand what property is failing (frustration is deeply set in).

The Trace Output
Code:
11:15:29,539 DEBUG SessionFactoryImpl prepared statement get: select sentmess0_.sentMessagePK as sentMess1___, sentmess0_.idx as idx__, sentmess0_.sentMessagePK as sentMessagePK, sentmess0_.version as version, sentmess0_.sender as sender, sentmess0_.recipient as recipient, sentmess0_.subject as subject, sentmess0_.message as message, sentmess0_.sentDate as sentDate, sentmess0_.sentFolderPK as sentFold8_ from SentMessage sentmess0_ where sentmess0_.sentFolderPK=?
11:15:29,539 DEBUG PreparedStatementCache preparing statement: select sentmess0_.sentMessagePK as sentMess1___, sentmess0_.idx as idx__, sentmess0_.sentMessagePK as sentMessagePK, sentmess0_.version as version, sentmess0_.sender as sender, sentmess0_.recipient as recipient, sentmess0_.subject as subject, sentmess0_.message as message, sentmess0_.sentDate as sentDate, sentmess0_.sentFolderPK as sentFold8_ from SentMessage sentmess0_ where sentmess0_.sentFolderPK=?
11:15:29,539 DEBUG LongType binding '1835010' to parameter: 1
11:15:29,539 DEBUG Loader processing result set
11:15:29,539 DEBUG LongType returning '1900545' as column: sentMessagePK
11:15:29,539 DEBUG Loader result row: 1900545
11:15:29,539 DEBUG Loader Initializing object from ResultSet: 1900545
11:15:29,539 DEBUG Loader Hydrating entity: com.qsipayments.voicepersonals.messaging.SentMessage#1900545
11:15:29,539 DEBUG IntegerType returning '1' as column: version
11:15:29,539 DEBUG StringType returning 'shanerowatt' as column: sender
11:15:29,539 DEBUG StringType returning 'carolhunter' as column: recipient
11:15:29,539 DEBUG StringType returning 'I Feel Comfortably Numb' as column: subject
11:15:29,539 DEBUG StringType returning 'Is there anybody out there...' as column: message
11:15:29,539 DEBUG DateType returning '18 September 2003' as column: sentDate
11:15:29,539 DEBUG LongType returning '1835010' as column: sentFold8_
11:15:29,549 DEBUG SessionImpl Version: 1
11:15:29,549 DEBUG LongType returning '1900545' as column: sentMess1___
11:15:29,549 DEBUG SessionImpl loading [com.qsipayments.voicepersonals.messaging.SentMessage#1900545]
11:15:29,549 DEBUG SessionImpl attempting to resolve [com.qsipayments.voicepersonals.messaging.SentMessage#1900545]
11:15:29,549 DEBUG SessionImpl resolved object in session cache [com.qsipayments.voicepersonals.messaging.SentMessage#1900545]
11:15:29,549 DEBUG IntegerType returning '0' as column: idx__
11:15:29,549 DEBUG Loader done processing result set (1 rows)
11:15:29,549 DEBUG BatcherImpl done closing: 0 open PreparedStatements, 0 open ResultSets
11:15:29,549 DEBUG PreparedStatementCache recaching
11:15:29,549 DEBUG PreparedStatementCache total checked-out statements: 0
11:15:29,549 DEBUG PreparedStatementCache checked out: []
11:15:29,549 DEBUG Loader total objects hydrated: 1
11:15:29,549 DEBUG SessionImpl resolving associations for [com.qsipayments.voicepersonals.messaging.SentMessage#1900545]
11:15:29,549 DEBUG SessionImpl loading [com.qsipayments.voicepersonals.messaging.SentFolder#1835010]
11:15:29,549 DEBUG SessionImpl attempting to resolve [com.qsipayments.voicepersonals.messaging.SentFolder#1835010]
11:15:29,549 DEBUG SessionImpl resolved object in session cache [com.qsipayments.voicepersonals.messaging.SentFolder#1835010]
11:15:29,559 ERROR MessageServiceTest [16671929] XX0000 - Unable to perform test. - com.qsipayments.voicepersonals.messaging.FolderNotFoundException: Unable to find Sent Folder for owner shanerowatt [caused by: net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB setter of com.qsipayments.voicepersonals.messaging.SentMessage.?]
com.qsipayments.voicepersonals.messaging.FolderNotFoundException: Unable to find Sent Folder for owner shanerowatt [caused by: net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB setter of com.qsipayments.voicepersonals.messaging.SentMessage.?]
   at com.qsipayments.voicepersonals.messaging.MessagingService.getSentFolder(MessagingService.java:137)
   at com.qsipayments.voicepersonals.messaging.MessagingService.sendMessage(MessagingService.java:190)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.sendMessage(MessageServiceTest.java:187)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.testSendMessageToBlockedUser(MessageServiceTest.java:169)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:324)
   at junit.framework.TestCase.runTest(TestCase.java:166)
   at junit.framework.TestCase.runBare(TestCase.java:140)
   at junit.framework.TestResult$1.protect(TestResult.java:106)
   at junit.framework.TestResult.runProtected(TestResult.java:124)
   at junit.framework.TestResult.run(TestResult.java:109)
   at junit.framework.TestCase.run(TestCase.java:131)
   at junit.framework.TestSuite.runTest(TestSuite.java:173)
   at junit.framework.TestSuite.run(TestSuite.java:168)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:325)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:524)
Caused by: net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB setter of com.qsipayments.voicepersonals.messaging.SentMessage.?
   at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:167)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1961)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.loadCollection(Loader.java:602)
   at net.sf.hibernate.loader.OneToManyLoader.initialize(OneToManyLoader.java:102)
   at net.sf.hibernate.impl.SessionImpl.initialize(SessionImpl.java:2897)
   at net.sf.hibernate.collection.PersistentCollection.getInitialValue(PersistentCollection.java:128)
   at net.sf.hibernate.type.PersistentCollectionType.getCollection(PersistentCollectionType.java:74)
   at net.sf.hibernate.type.PersistentCollectionType.resolveIdentifier(PersistentCollectionType.java:177)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1959)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.find(Loader.java:620)
   at net.sf.hibernate.hql.QueryTranslator.find(QueryTranslator.java:928)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1343)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1322)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1318)
   at com.qsipayments.voicepersonals.messaging.SentFolderExtent.loadSentFolder(SentFolderExtent.java:56)
   at com.qsipayments.voicepersonals.messaging.MessagingService.getSentFolder(MessagingService.java:134)
   ... 17 more
Caused by: java.lang.ClassCastException
   at com.qsipayments.voicepersonals.messaging.SentMessageMetaClass5.setPropertyValues(<generated>)
   at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:162)
   ... 34 more
Caused by: java.lang.ClassCastException
   at com.qsipayments.voicepersonals.messaging.SentMessageMetaClass5.setPropertyValues(<generated>)
   at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:162)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1961)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.loadCollection(Loader.java:602)
   at net.sf.hibernate.loader.OneToManyLoader.initialize(OneToManyLoader.java:102)
   at net.sf.hibernate.impl.SessionImpl.initialize(SessionImpl.java:2897)
   at net.sf.hibernate.collection.PersistentCollection.getInitialValue(PersistentCollection.java:128)
   at net.sf.hibernate.type.PersistentCollectionType.getCollection(PersistentCollectionType.java:74)
   at net.sf.hibernate.type.PersistentCollectionType.resolveIdentifier(PersistentCollectionType.java:177)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1959)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.find(Loader.java:620)
   at net.sf.hibernate.hql.QueryTranslator.find(QueryTranslator.java:928)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1343)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1322)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1318)
   at com.qsipayments.voicepersonals.messaging.SentFolderExtent.loadSentFolder(SentFolderExtent.java:56)
   at com.qsipayments.voicepersonals.messaging.MessagingService.getSentFolder(MessagingService.java:134)
   at com.qsipayments.voicepersonals.messaging.MessagingService.sendMessage(MessagingService.java:190)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.sendMessage(MessageServiceTest.java:187)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.testSendMessageToBlockedUser(MessageServiceTest.java:169)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:324)
   at junit.framework.TestCase.runTest(TestCase.java:166)
   at junit.framework.TestCase.runBare(TestCase.java:140)
   at junit.framework.TestResult$1.protect(TestResult.java:106)
   at junit.framework.TestResult.runProtected(TestResult.java:124)
   at junit.framework.TestResult.run(TestResult.java:109)
   at junit.framework.TestCase.run(TestCase.java:131)
   at junit.framework.TestSuite.runTest(TestSuite.java:173)
   at junit.framework.TestSuite.run(TestSuite.java:168)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:325)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:524)
rethrown as net.sf.hibernate.PropertyAccessException: exception setting property value with CGLIB setter of com.qsipayments.voicepersonals.messaging.SentMessage.?
   at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:167)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1961)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.loadCollection(Loader.java:602)
   at net.sf.hibernate.loader.OneToManyLoader.initialize(OneToManyLoader.java:102)
   at net.sf.hibernate.impl.SessionImpl.initialize(SessionImpl.java:2897)
   at net.sf.hibernate.collection.PersistentCollection.getInitialValue(PersistentCollection.java:128)
   at net.sf.hibernate.type.PersistentCollectionType.getCollection(PersistentCollectionType.java:74)
   at net.sf.hibernate.type.PersistentCollectionType.resolveIdentifier(PersistentCollectionType.java:177)
   at net.sf.hibernate.impl.SessionImpl.initializeEntity(SessionImpl.java:1959)
   at net.sf.hibernate.loader.Loader.doFind(Loader.java:196)
   at net.sf.hibernate.loader.Loader.find(Loader.java:620)
   at net.sf.hibernate.hql.QueryTranslator.find(QueryTranslator.java:928)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1343)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1322)
   at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1318)
   at com.qsipayments.voicepersonals.messaging.SentFolderExtent.loadSentFolder(SentFolderExtent.java:56)
   at com.qsipayments.voicepersonals.messaging.MessagingService.getSentFolder(MessagingService.java:134)
   at com.qsipayments.voicepersonals.messaging.MessagingService.sendMessage(MessagingService.java:190)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.sendMessage(MessageServiceTest.java:187)
   at com.qsipayments.voicepersonals.messaging.MessageServiceTest.testSendMessageToBlockedUser(MessageServiceTest.java:169)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:324)
   at junit.framework.TestCase.runTest(TestCase.java:166)
   at junit.framework.TestCase.runBare(TestCase.java:140)
   at junit.framework.TestResult$1.protect(TestResult.java:106)
   at junit.framework.TestResult.runProtected(TestResult.java:124)
   at junit.framework.TestResult.run(TestResult.java:109)
   at junit.framework.TestCase.run(TestCase.java:131)
   at junit.framework.TestSuite.runTest(TestSuite.java:173)
   at junit.framework.TestSuite.run(TestSuite.java:168)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:325)
   at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:524)
Caused by: java.lang.ClassCastException
   at com.qsipayments.voicepersonals.messaging.SentMessageMetaClass5.setPropertyValues(<generated>)
   at net.sf.hibernate.persister.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:162)
   ... 34 more


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

<hibernate-mapping>
    <class name="com.qsipayments.voicepersonals.messaging.SentMessage" table="SentMessage">
        <!-- hibernate assigned primary key -->
        <id name="sentMessagePK" column="sentMessagePK" type="long">
            <generator class="hilo"/>
        </id>
        <version      name="version"/>
        <component    name="message"   class="com.qsipayments.voicepersonals.messaging.Message">
         <property name="sender"    type="string" not-null="true"/>
         <property name="recipient" type="string" not-null="true"/>
         <property name="subject"   type="string" not-null="true"/>
         <property name="message"   type="string" not-null="true"/>         
        </component>
        <property     name="sentDate"  type="date"   not-null="true"/>
        <many-to-one name="sentFolderPK" class="com.qsipayments.voicepersonals.messaging.SentFolder"/>
    </class>
</hibernate-mapping>


The Source Code
Code:
package com.qsipayments.voicepersonals.messaging;

import net.sf.hibernate.Session;
import net.sf.hibernate.CallbackException;
import net.sf.hibernate.Lifecycle;

import java.util.Date;
import java.io.Serializable;
import com.qsipayments.utility.logging.LoggingDelegate;
import com.qsipayments.utility.logging.Logging;

public class SentMessage implements Comparable, Lifecycle, Serializable {

    static final long serialVersionUID = -1605405634704951990L;

    private static final LoggingDelegate s_log = Logging.getInstance().getDelegate(SentMessage.class);

    private Long m_sentMessagePK;
    private Long m_sentFolderPK;

    private int m_version = 1;

    private Message m_message;
    private Date m_sentDate;

    public SentMessage() {
    }

    public SentMessage(Message message) {
        m_message = message;
        m_sentDate = new Date();
    }

    public Long getSentMessagePK() {
        return m_sentMessagePK;
    }

    public void setSentMessagePK(Long sentMessagePK) {
        m_sentMessagePK = sentMessagePK;
    }

    public Long getSentFolderPK() {
        return m_sentFolderPK;
    }

    public void setSentFolderPK(Long sentFolderPK) {
        m_sentFolderPK = sentFolderPK;
    }

    public void setSentDate(Date sentDate) {
        m_sentDate = sentDate;
    }

    public Date getSentDate() {
        return m_sentDate;
    }

    public void setMessage(Message message) {
        m_message = message;
    }

    public Message getMessage() {
        return m_message;
    }

    public int getVersion() {
        return m_version;
    }

    public void setVersion(int version) {
        m_version = version;
    }

    public boolean onSave(Session s) throws CallbackException {
        s_log.debug("SentMessage.onSave(): " + toString());
        return false;
    }

    public boolean onUpdate(Session s) throws CallbackException {
        s_log.debug("SentMessage.onUpdate(): " + toString());
        return false;
    }

    public boolean onDelete(Session s) throws CallbackException {
        s_log.debug("SentMessage.onDelete(): " + toString());
        return false;
    }

    public void onLoad(Session s, Serializable id) {
        s_log.debug("SentMessage.onLoad(): " + toString());
    }
}


Top
 Profile  
 
 Post subject:
PostPosted: Thu Sep 18, 2003 4:48 pm 
Hibernate Team
Hibernate Team

Joined: Mon Aug 25, 2003 9:11 pm
Posts: 4592
Location: Switzerland
There is something wrong with your types and mapping of these types, you get a ClassCastException. Try removing all "type" attributes from the Hibernate mapping (well, not the component or association types...) and it will figure out the types with Reflection.

_________________
JAVA PERSISTENCE WITH HIBERNATE
http://jpwh.org
Get the book, training, and consulting for your Hibernate team.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 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:
cron
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.