-->
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.  [ 6 posts ] 
Author Message
 Post subject: QBE problem
PostPosted: Tue Nov 09, 2004 8:37 am 
Newbie

Joined: Thu Sep 02, 2004 8:33 am
Posts: 6
Hibernate version:
Hibernate 2.1.6

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

<hibernate-mapping package="nl.tisis.trinium.crm">
<class name="nl.tisis.trinium.crm.Adres" table="adres">
<id
column="AdresNr"
name="AdresNr"
type="integer"
>
<generator class="increment" />
</id>
<property
column="Straat"
length="50"
name="Straat"
not-null="false"
type="string"
/>
<property
column="Postcode"
length="8"
name="Postcode"
not-null="true"
type="string"
/>
<property
column="Postbus"
length="5"
name="Postbus"
not-null="false"
type="integer"
/>
<property
column="Plaats"
length="30"
name="Plaats"
not-null="true"
type="string"
/>
</class>
Code between sessionFactory.openSession() and session.close():

IAdres adres = new Adres();
a.setPlaats("Emmen");

Configuration cfg = new Configuration();
cfg.addDirectory(new File("mappingfiles"));
SessionFactory sf = cfg.buildSessionFactory()
session = sf.openSession();

Example exampleAdres = Example.create(adres).ignoreCase().enableLike(MatchMode.ANYWHERE);

results = session.createCriteria(Adres.class).add(exampleAdres).list();

Full stack trace of any exception that occurs:

No Exceptions

Name and version of the database you are using:
Mysql 4.0.18

The generated SQL (show_sql=true):

13:30:22,765 INFO Environment: Hibernate 2.1.6
13:30:22,781 INFO Environment: loaded properties from resource hibernate.properties: {hibernate.connection.driver_class=com.mysql.jdbc.Driver, hibernate.cglib.use_reflection_optimizer=true, hibernate.cache.provider_class=net.sf.ehcache.hibernate.Provider, hibernate.dialect=net.sf.hibernate.dialect.MySQLDialect, hibernate.max_fetch_depth=1, hibernate.jdbc.use_streams_for_binary=true, hibernate.connection.username=, hibernate.connection.url=jdbc:mysql://localhost:3306/trinium, hibernate.connection.password=}
13:30:22,859 INFO Environment: using java.io streams to persist binary types
13:30:22,859 INFO Environment: using CGLIB reflection optimizer
13:30:22,859 INFO Configuration: Mapping file: mappingfiles\Adres.hbm.xml
13:30:22,968 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:22,968 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,109 INFO Binder: Mapping class: nl.tisis.trinium.crm.Adres -> adres
13:30:23,218 DEBUG Binder: Mapped property: AdresNr -> AdresNr, type: integer
13:30:23,234 DEBUG Binder: Mapped property: Straat -> Straat, type: string
13:30:23,234 DEBUG Binder: Mapped property: Postcode -> Postcode, type: string
13:30:23,234 DEBUG Binder: Mapped property: Postbus -> Postbus, type: integer
13:30:23,234 DEBUG Binder: Mapped property: Plaats -> Plaats, type: string
13:30:23,234 INFO Configuration: Mapping file: mappingfiles\Contactpersoon.hbm.xml
13:30:23,250 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,578 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,625 INFO Binder: Mapping class: nl.tisis.trinium.crm.ContactPersoon -> contactpersoon
13:30:23,625 DEBUG Binder: Mapped property: ContactpersoonNr -> ContactpersoonNr, type: integer
13:30:23,625 DEBUG Binder: Mapped property: Geslacht -> Geslacht, type: string
13:30:23,625 DEBUG Binder: Mapped property: MobielNr -> MobielNr, type: string
13:30:23,625 DEBUG Binder: Mapped property: Aanhef -> Aanhef, type: string
13:30:23,625 DEBUG Binder: Mapped property: TelefoonNr -> TelefoonNr, type: string
13:30:23,625 DEBUG Binder: Mapped property: Voornaam -> Voornaam, type: string
13:30:23,625 DEBUG Binder: Mapped property: Relatie -> RelatieNr, type: nl.tisis.trinium.crm.Relatie
13:30:23,640 DEBUG Binder: Mapped property: EmailAdres -> Emailadres, type: string
13:30:23,640 DEBUG Binder: Mapped property: Naam -> Naam, type: string
13:30:23,640 INFO Configuration: Mapping file: mappingfiles\Crediteurstatus.hbm.xml
13:30:23,656 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,656 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,687 INFO Binder: Mapping class: nl.tisis.trinium.crm.CrediteurStatus -> crediteurstatus
13:30:23,687 DEBUG Binder: Mapped property: CrediteurStatusNr -> CrediteurStatusNr, type: integer
13:30:23,687 DEBUG Binder: Mapped property: Omschrijving -> Omschrijving, type: string
13:30:23,687 INFO Configuration: Mapping file: mappingfiles\Debiteurstatus.hbm.xml
13:30:23,703 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,703 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,718 INFO Binder: Mapping class: nl.tisis.trinium.crm.DebiteurStatus -> debiteurstatus
13:30:23,718 DEBUG Binder: Mapped property: DebiteurStatusNr -> DebiteurStatusNr, type: integer
13:30:23,718 DEBUG Binder: Mapped property: Omschrijving -> Omschrijving, type: string
13:30:23,718 INFO Configuration: Mapping file: mappingfiles\Klacht.hbm.xml
13:30:23,718 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,718 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,734 INFO Binder: Mapping class: nl.tisis.trinium.crm.Klacht -> klacht
13:30:23,734 DEBUG Binder: Mapped property: KlachtNr -> KlachtNr, type: integer
13:30:23,734 DEBUG Binder: Mapped property: Omschrijving -> Omschrijving, type: string
13:30:23,734 DEBUG Binder: Mapped property: AangemaaktDoor -> AangemaaktDoor, type: integer
13:30:23,734 DEBUG Binder: Mapped property: Relatie -> RelatieNr, type: nl.tisis.trinium.crm.Relatie
13:30:23,734 INFO Configuration: Mapping file: mappingfiles\Notitie.hbm.xml
13:30:23,750 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,750 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,750 INFO Binder: Mapping class: nl.tisis.trinium.crm.Notitie -> notitie
13:30:23,750 DEBUG Binder: Mapped property: NotitieNr -> NotitieNr, type: integer
13:30:23,750 DEBUG Binder: Mapped property: NotitieStatus -> NotitieStatusNr, type: nl.tisis.trinium.crm.NotitieStatus
13:30:23,750 DEBUG Binder: Mapped property: Beschrijving -> Beschrijving, type: string
13:30:23,750 DEBUG Binder: Mapped property: DatumAangemaakt -> DatumAangemaakt, type: date
13:30:23,750 DEBUG Binder: Mapped property: Actie -> Actie, type: string
13:30:23,750 DEBUG Binder: Mapped property: Relatie -> RelatieNr, type: nl.tisis.trinium.crm.Relatie
13:30:23,750 INFO Configuration: Mapping file: mappingfiles\Notitiestatus.hbm.xml
13:30:23,765 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,765 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,781 INFO Binder: Mapping class: nl.tisis.trinium.crm.NotitieStatus -> notitiestatus
13:30:23,781 DEBUG Binder: Mapped property: NotitieStatusNr -> NotitieStatusNr, type: integer
13:30:23,781 DEBUG Binder: Mapped property: Omschrijving -> Omschrijving, type: string
13:30:23,781 INFO Configuration: Mapping file: mappingfiles\Relatie.hbm.xml
13:30:23,781 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,781 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,796 INFO Binder: Mapping class: nl.tisis.trinium.crm.Relatie -> relatie
13:30:23,796 DEBUG Binder: Mapped property: RelatieNr -> RelatieNr, type: integer
13:30:23,796 DEBUG Binder: Mapped property: FaxNr -> FaxNr, type: string
13:30:23,796 DEBUG Binder: Mapped property: Email -> Email, type: string
13:30:23,796 DEBUG Binder: Mapped property: RelatieGroep -> GroepNr, type: nl.tisis.trinium.crm.RelatieGroep
13:30:23,796 DEBUG Binder: Mapped property: TelefoonNr -> TelefoonNr, type: string
13:30:23,796 DEBUG Binder: Mapped property: Adres -> AdresNr, type: nl.tisis.trinium.crm.Adres
13:30:23,796 DEBUG Binder: Mapped property: BezoekAdres -> BezoekAdresNr, type: nl.tisis.trinium.crm.Adres
13:30:23,796 DEBUG Binder: Mapped property: Naam -> Naam, type: string
13:30:23,812 DEBUG Binder: Mapped property: notitie, type: java.util.Set
13:30:23,812 DEBUG Binder: Mapped property: contactPersonen, type: java.util.Set
13:30:23,812 DEBUG Binder: Mapped property: klacht, type: java.util.Set
13:30:23,859 INFO Binder: Mapping joined-subclass: nl.tisis.trinium.crm.Debiteur -> Debiteur
13:30:23,859 DEBUG Binder: Mapped property: Korting -> Korting, type: float
13:30:23,859 DEBUG Binder: Mapped property: DebiteurStatus -> DebiteurStatusNr, type: nl.tisis.trinium.crm.DebiteurStatus
13:30:23,859 INFO Binder: Mapping joined-subclass: nl.tisis.trinium.crm.Crediteur -> Crediteur
13:30:23,859 DEBUG Binder: Mapped property: RekeningNr -> RekeningNr, type: integer
13:30:23,859 DEBUG Binder: Mapped property: VoorkeursNr -> VoorkeursNr, type: integer
13:30:23,859 DEBUG Binder: Mapped property: CrediteurStatus -> CrediteurStatusNr, type: nl.tisis.trinium.crm.CrediteurStatus
13:30:23,859 DEBUG Binder: Mapped property: Opmerkingen -> Opmerkingen, type: string
13:30:23,859 INFO Configuration: Mapping file: mappingfiles\Relatiegroep.hbm.xml
13:30:23,875 DEBUG DTDEntityResolver: trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
13:30:23,875 DEBUG DTDEntityResolver: found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
13:30:23,906 INFO Binder: Mapping class: nl.tisis.trinium.crm.RelatieGroep -> relatiegroep
13:30:23,906 DEBUG Binder: Mapped property: GroepNr -> GroepNr, type: integer
13:30:23,906 DEBUG Binder: Mapped property: Omschrijving -> Omschrijving, type: string
13:30:23,921 INFO Configuration: processing one-to-many association mappings
13:30:23,921 DEBUG Binder: Second pass for collection: nl.tisis.trinium.crm.Relatie.notitie
13:30:23,921 INFO Binder: Mapping collection: nl.tisis.trinium.crm.Relatie.notitie -> notitie
13:30:23,921 DEBUG Binder: Mapped collection key: RelatieNr, one-to-many: nl.tisis.trinium.crm.Notitie
13:30:23,921 DEBUG Binder: Second pass for collection: nl.tisis.trinium.crm.Relatie.contactPersonen
13:30:23,921 INFO Binder: Mapping collection: nl.tisis.trinium.crm.Relatie.contactPersonen -> contactpersoon
13:30:23,921 DEBUG Binder: Mapped collection key: RelatieNr, one-to-many: nl.tisis.trinium.crm.ContactPersoon
13:30:23,921 DEBUG Binder: Second pass for collection: nl.tisis.trinium.crm.Relatie.klacht
13:30:23,921 INFO Binder: Mapping collection: nl.tisis.trinium.crm.Relatie.klacht -> klacht
13:30:23,921 DEBUG Binder: Mapped collection key: KlachtNr, one-to-many: nl.tisis.trinium.crm.Klacht
13:30:23,921 INFO Configuration: processing one-to-one association property references
13:30:23,921 INFO Configuration: processing foreign key constraints
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.RelatieGroep
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Adres
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Adres
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Relatie
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.NotitieStatus
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.DebiteurStatus
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Relatie
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.CrediteurStatus
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Relatie
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Relatie
13:30:23,921 DEBUG Configuration: resolving reference to class: nl.tisis.trinium.crm.Relatie
13:30:23,953 INFO Dialect: Using dialect: net.sf.hibernate.dialect.MySQLDialect
13:30:23,953 INFO SettingsFactory: Maximim outer join fetch depth: 1
13:30:23,953 INFO SettingsFactory: Use outer join fetching: true
13:30:23,953 INFO DriverManagerConnectionProvider: Using Hibernate built-in connection pool (not for production use!)
13:30:23,953 INFO DriverManagerConnectionProvider: Hibernate connection pool size: 20
13:30:23,968 INFO DriverManagerConnectionProvider: using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://localhost:3306/trinium
13:30:23,968 INFO DriverManagerConnectionProvider: connection properties: {user=, password=}
13:30:23,968 INFO TransactionManagerLookupFactory: No TransactionManagerLookup configured (in JTA environment, use of process level read-write cache is not recommended)
13:30:23,968 DEBUG DriverManagerConnectionProvider: total checked-out connections: 0
13:30:23,968 DEBUG DriverManagerConnectionProvider: opening new JDBC connection
13:30:24,156 DEBUG DriverManagerConnectionProvider: created connection to: jdbc:mysql://localhost:3306/trinium, Isolation Level: 4
13:30:24,156 DEBUG DriverManagerConnectionProvider: returning connection to pool, pool size: 1
13:30:24,156 INFO SettingsFactory: Use scrollable result sets: true
13:30:24,156 INFO SettingsFactory: Use JDBC3 getGeneratedKeys(): true
13:30:24,156 INFO SettingsFactory: Optimize cache for minimal puts: false
13:30:24,156 INFO SettingsFactory: Query language substitutions: {}
13:30:24,156 INFO SettingsFactory: cache provider: net.sf.ehcache.hibernate.Provider
13:30:24,156 INFO Configuration: instantiating and configuring caches
13:30:24,312 INFO SessionFactoryImpl: building session factory
13:30:24,312 DEBUG SessionFactoryImpl: instantiating session factory with properties: {java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition, hibernate.connection.password=, hibernate.cache.provider_class=net.sf.ehcache.hibernate.Provider, sun.boot.library.path=C:\eclipse\jre\bin, java.vm.version=1.4.2_02-b03, hibernate.connection.username=, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=;, java.vm.name=Java HotSpot(TM) Client VM, file.encoding.pkg=sun.io, user.country=NL, sun.os.patch.level=Service Pack 2, java.vm.specification.name=Java Virtual Machine Specification, user.dir=C:\eclipse\workspace\TriniumCRM, java.runtime.version=1.4.2_02-b03, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.endorsed.dirs=C:\eclipse\jre\lib\endorsed, os.arch=x86, java.io.tmpdir=C:\DOCUME~1\Bart\LOCALS~1\Temp\, line.separator=
, java.vm.specification.vendor=Sun Microsystems Inc., user.variant=, os.name=Windows XP, sun.java2d.fontpath=, java.library.path=C:\eclipse\jre\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\jdk\bin, java.specification.name=Java Platform API Specification, java.class.version=48.0, java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory, os.version=5.1, user.home=C:\Documents and Settings\Bart, user.timezone=Europe/Berlin, java.awt.printerjob=sun.awt.windows.WPrinterJob, file.encoding=Cp1252, java.specification.version=1.4, hibernate.connection.driver_class=com.mysql.jdbc.Driver, java.class.path=C:\eclipse\workspace\TriniumCRM\classes;C:\eclipse\workspace\TriniumCRM\lib\ant-junit-1.6.1.jar;C:\eclipse\workspace\TriniumCRM\lib\c3p0-0.8.4.5.jar;C:\eclipse\workspace\TriniumCRM\lib\cglib-full-2.0.1.jar;C:\eclipse\workspace\TriniumCRM\lib\commons-beanutils.jar;C:\eclipse\workspace\TriniumCRM\lib\commons-collections-2.1.1.jar;C:\eclipse\workspace\TriniumCRM\lib\commons-digester.jar;C:\eclipse\workspace\TriniumCRM\lib\commons-lang-1.0.1.jar;C:\eclipse\workspace\TriniumCRM\lib\commons-logging-1.0.4.jar;C:\eclipse\workspace\TriniumCRM\lib\dom4j-1.4.jar;C:\eclipse\workspace\TriniumCRM\lib\ehcache-0.9.jar;C:\eclipse\workspace\TriniumCRM\lib\ejb-api.jar;C:\eclipse\workspace\TriniumCRM\lib\hibernate-2.1.6.jar;C:\eclipse\workspace\TriniumCRM\lib\hsqldb.jar;C:\eclipse\workspace\TriniumCRM\lib\jsdk23.jar;C:\eclipse\workspace\TriniumCRM\lib\jsf-api.jar;C:\eclipse\workspace\TriniumCRM\lib\jsf-impl.jar;C:\eclipse\workspace\TriniumCRM\lib\jsp-api.jar;C:\eclipse\workspace\TriniumCRM\lib\jstl.jar;C:\eclipse\workspace\TriniumCRM\lib\jta-api.jar;C:\eclipse\workspace\TriniumCRM\lib\junit-3.8.1.jar;C:\eclipse\workspace\TriniumCRM\lib\log4j-1.2.8.jar;C:\eclipse\workspace\TriniumCRM\lib\mysql-connector-java-3.0.14-production-bin.jar;C:\eclipse\workspace\TriniumCRM\lib\odmg-3.0.jar;C:\eclipse\workspace\TriniumCRM\lib\servlet-api.jar;C:\eclipse\workspace\TriniumCRM\lib\standard.jar;C:\eclipse\workspace\TriniumCRM\lib\Util.jar;C:\eclipse\workspace\TriniumCRM\lib\trinium.jar;C:\eclipse\workspace\TriniumCRM\lib\servicelocator.jar, user.name=Bart, java.vm.specification.version=1.0, java.home=C:\eclipse\jre, sun.arch.data.model=32, hibernate.dialect=net.sf.hibernate.dialect.MySQLDialect, hibernate.connection.url=jdbc:mysql://localhost:3306/trinium, user.language=nl, java.specification.vendor=Sun Microsystems Inc., awt.toolkit=sun.awt.windows.WToolkit, hibernate.cglib.use_reflection_optimizer=true, java.vm.info=mixed mode, hibernate.jdbc.use_streams_for_binary=true, java.version=1.4.2_02, java.ext.dirs=C:\eclipse\jre\lib\ext, sun.boot.class.path=C:\eclipse\jre\lib\rt.jar;C:\eclipse\jre\lib\i18n.jar;C:\eclipse\jre\lib\sunrsasign.jar;C:\eclipse\jre\lib\jsse.jar;C:\eclipse\jre\lib\jce.jar;C:\eclipse\jre\lib\charsets.jar;C:\eclipse\jre\classes, java.vendor=Sun Microsystems Inc., file.separator=\, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, sun.io.unicode.encoding=UnicodeLittle, sun.cpu.endian=little, hibernate.max_fetch_depth=1, sun.cpu.isalist=pentium i486 i386}
13:30:24,578 INFO ReflectHelper: reflection optimizer disabled for: nl.tisis.trinium.crm.Notitie, BulkBeanException: Cannot find specified property (property setRelatie)
13:30:24,593 INFO ReflectHelper: reflection optimizer disabled for: nl.tisis.trinium.crm.ContactPersoon, BulkBeanException: Cannot find specified property (property setRelatie)
13:30:24,609 INFO ReflectHelper: reflection optimizer disabled for: nl.tisis.trinium.crm.Klacht, BulkBeanException: Cannot find specified property (property setRelatie)
13:30:24,875 DEBUG SessionFactoryObjectFactory: initializing class SessionFactoryObjectFactory
13:30:24,890 DEBUG SessionFactoryObjectFactory: registered: 8a808001001d503701001d503a6b0000 (unnamed)
13:30:25,031 INFO SessionFactoryObjectFactory: Not binding factory to JNDI, no JNDI name configured
13:30:25,031 DEBUG SessionFactoryImpl: instantiated session factory
13:30:25,109 DEBUG SessionImpl: opened session
13:30:35,765 DEBUG SessionImpl: flushing session
13:30:35,765 DEBUG SessionImpl: Flushing entities and processing referenced collections
13:30:35,765 DEBUG SessionImpl: Processing unreferenced collections
13:30:35,781 DEBUG SessionImpl: Scheduling collection removes/(re)creates/updates
13:30:35,781 DEBUG SessionImpl: Flushed: 0 insertions, 0 updates, 0 deletions to 0 objects
13:30:35,781 DEBUG SessionImpl: Flushed: 0 (re)creations, 0 updates, 0 removals to 0 collections
13:30:35,796 DEBUG SessionImpl: Dont need to execute flush
13:30:35,812 DEBUG BatcherImpl: about to open: 0 open PreparedStatements, 0 open ResultSets
13:30:35,812 DEBUG DriverManagerConnectionProvider: total checked-out connections: 0
13:30:35,812 DEBUG DriverManagerConnectionProvider: using pooled JDBC connection, pool size: 0
13:30:35,812 DEBUG SQL: select this.AdresNr as AdresNr0_, this.Straat as Straat0_, this.Postcode as Postcode0_, this.Postbus as Postbus0_, this.Plaats as Plaats0_ from adres this where (this.Postbus=? and lower(this.Plaats) like ?)
13:30:35,828 DEBUG BatcherImpl: preparing statement
13:30:35,953 DEBUG Loader: processing result set
13:30:35,953 DEBUG Loader: done processing result set (0 rows)
13:30:35,953 DEBUG BatcherImpl: done closing: 0 open PreparedStatements, 0 open ResultSets
13:30:35,953 DEBUG BatcherImpl: closing statement
13:30:35,953 DEBUG Loader: total objects hydrated: 0
13:30:35,953 DEBUG SessionImpl: initializing non-lazy collections
13:30:55,531 DEBUG SessionImpl: closing session
13:30:55,531 DEBUG SessionImpl: disconnecting session
13:30:55,546 DEBUG DriverManagerConnectionProvider: returning connection to pool, pool size: 1
13:30:55,546 DEBUG SessionImpl: transaction completion
[]

Debug level Hibernate log excerpt:





The problem is dat my list of results stays empty. What am i doing wrong.
All my other QBE works fine only this one not.

If I use session.find("from nl.tisis.trinium.crm.Adres") it works fine.
So i don't think my hbm.xml files are wrong.

What am i doing wrong?


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 09, 2004 10:30 am 
Newbie

Joined: Fri Aug 29, 2003 4:36 am
Posts: 16
Location: Belgium
Hi,

...adres this where (this.Postbus=? and lower(this.Plaats) like ?)

this means it is also looking at the Postbus value.
This might happen when you initialise it when creating an adres or when it is of type int, in which case it is of course never null, and if it is not null, it will be included in the QBE.
(you did not include the code of the Adres class itself.)

Bart.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 09, 2004 8:28 pm 
Pro
Pro

Joined: Tue Aug 26, 2003 8:07 pm
Posts: 229
Location: Brisbane, Australia
Yeah, we thought QBE was going to be the answer to our dreams, query-wise. If we'd been able to use it, for the majority of our queries we wouldn't have had any string content - eveything would be completely typesafe (thus making refactoring more effective with autmoated tools and just generally safer).

Unfortunately, we kept hitting problems where someone would default a variable, or we tried to enforce some rule (like parent must always have at least one child) in the domain model and that would mess up the construction of the example object.

This is one of the things that led us to use an anemic domain model (which we still use, even though we've completely abandoned QBE, D'oh!)
I've been thinking about it since and I think there are much better options for enabling QBE than an anemic domain model (template objects that use reflection to bypass rules, or domain objects specified as interfaces so you can have multiple implementations), but we just didn't have time to explore these options, especially when there are other options available like QBC and HQL.

But other things you'll have to watch out for are ordering and eager-fetching; there's not really any way that I know of to specify these things when using QBE.

Anyway, long story short, as Bart said have a close look at the class you're using for the example object, does it do any defaulting of values or other enforcement of business rules?

_________________
Cheers,
Shorn.


Top
 Profile  
 
 Post subject: int = 0
PostPosted: Wed Nov 10, 2004 4:20 am 
Newbie

Joined: Thu Sep 02, 2004 8:33 am
Posts: 6
Bart,

You were right!! my int postbus in class Adres is 0 instead of null.

But how can i make my variable int postbus null instead of 0?

Any suggestion will be appreciate!

Bart.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 10, 2004 4:59 pm 
Newbie

Joined: Fri Aug 29, 2003 4:36 am
Posts: 16
Location: Belgium
You have several options, making an int null is not one of them as this is not possible.

Take a look at the example from the reference guide...

Code:
Example example = Example.create(cat)
    .excludeZeroes()           //exclude zero valued properties
    .excludeProperty("color")  //exclude the property named "color"
    .ignoreCase()              //perform case insensitive string comparisons
    .enableLike();             //use like for string comparisons

([url]http://www.hibernate.org/hib_docs/reference/en/html/querycriteria.html#querycriteria-examples
[/url])
You could exclude all zero's from the query, or exclude your Postbus property (who would be querying on a Postbus?).
Another option is what we do most of the times, that is using Wrapper types (Integer) instead of basic types (int), which are then null when not explicitly set.

Bart.


Top
 Profile  
 
 Post subject: QBE problem
PostPosted: Wed Mar 16, 2005 6:13 am 
Newbie

Joined: Wed Mar 16, 2005 6:06 am
Posts: 1
I have the same proble, but with Strings. I'd like to be able to exclude empty Strings from (with content: "") from query, but excludeZeroes() seems not to work. What is a considered zero value for java.lang.String?


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