Thanks for the quick response, but no.. same problem )o:
Its definately got to do with the quotes... I'm assuming there's something
simple that I'm missing as its a pretty fundamental problem... It seems as
though I'm using the wrong engine, but as you can see my database.xml file
is - as far as I know - ok....
cheers
dim
On Tue, 25 Sep 2001, Keith Chew wrote:
>
> I believe I tried changing all tables to lower case in the mapping file and
> it works. Not sure if that is the right solution though.
>
> Keith C
>
>
> -----Original Message-----
> From: Dmitri Colebatch [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, 25 September 2001 1:28 p.m.
> To: [EMAIL PROTECTED]
> Subject: [castor-dev] postgres and quotes in a query
>
>
> Hey list,
>
> I'm trying to run the example that is on the JBoss site
> (http://www.jboss.org/jboss-castor.jsp) but have found something weird.
>
> Firstly, specs:
>
> JBoss 2.4.0 final
> Castor 0.9.3
> Postgres 7.1.2
>
> The problem I gets is that the oql query:
>
> SELECT p FROM rooms.dao.RoomData p
>
> is translated to
>
> SELECT "Room"."name","Room"."description","Occupant"."name"
> FROM "Room" LEFT OUTER JOIN
> "Occupant" ON "Room"."name"="Occupant"."Roomname"
>
> and Postgres complains it cant find the Room Relation... I can confirm
> this through psql. However, if I change the query and remove the quotes,
> so its:
>
> SELECT Room.name,Room.description,Occupant.name
> FROM Room LEFT OUTER JOIN
> Occupant ON Room.name=Occupant.Roomname;
>
> then it works fine. Has anyone else experienced this? I'm guessing its
> something wrong with my config, so I've included it below. I have looked,
> and couldn't find anything obvious or on the site... if there is something
> there, a simple pointer would be fine (o:
>
> cheesr
> dim
>
>
> database.xml:
> -------------
>
> <database name="rooms" engine="postgresql">
> <jndi name="java:/DefaultDS" />
> <mapping href="../tomcat/mapping.xml" />
> </database>
>
> mapping.xml
> -----------
>
> <!DOCTYPE databases PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN"
> "http://castor.exolab.org/mapping.dtd">
>
> <mapping>
>
> <!-- Mapping for Room -->
> <class name="rooms.dao.RoomData" identity="name" >
>
> <cache-type type="unlimited" />
> <description>A space that can be occupied</description>
>
> <map-to table="Room" xml="Room" />
>
> <field name="name" type="string">
> <sql name="name" type="varchar"/>
> <xml name="name" node="element" />
> </field>
>
> <field name="description" type="string">
> <sql name="description" type="varchar"/>
> <xml name="description" node="element" />
> </field>
>
> <field
> name="OccupantInfo" type="rooms.dao.OccupantData" required="false"
> collection="arraylist">
> <sql many-key="Roomname"/>
> <xml name="Occupant" node="element" />
> </field>
>
> </class>
>
> <!-- Mapping for Occupant -->
> <class
> name="rooms.dao.OccupantData" identity="name" depends="rooms.dao.RoomData">
>
> <cache-type type="unlimited" />
> <description>It's an occupant of a room</description>
>
> <map-to table="Occupant" xml="Occupant" />
>
> <field name="name" type="string">
> <sql name="name" type="varchar"/>
> <xml name="name" node="element" />
> </field>
>
> <field name="age" type="integer">
> <sql name="age" type="integer"/>
> <xml name="age" node="element" />
> </field>
>
> <field name="description" type="string">
> <sql name="description" type="varchar"/>
> <xml name="description" node="element" />
> </field>
>
> <field name="Room" type="rooms.dao.RoomData" required="true" >
> <sql name="Roomname" />
> <xml name="Room" node="element" />
> </field>
>
> </class>
>
> </mapping>
>
> castor.properties
> -----------------
>
> # Defines the default XML parser to be used by castor
> # The parser must implement org.xml.sax.Parser
> #
> org.exolab.castor.parser=org.apache.xerces.parsers.SAXParser
>
>
> # Defines the default XML serializer to be used by castor
> # The serializer must implement org.apache.xml.serialize.Serializer
> #
> org.exolab.castor.serializer=org.apache.xml.serialize.XMLSerializer
>
>
> # Defines the Regular Expression Evaluator to be used by Castor
> # The evaluator must implement org.exolab.castor.util.RegExpEvaluator
> #
> # An implementation which uses the Jakarta RE library
> org.exolab.castor.regexp=org.exolab.castor.util.JakartaRegExpEvaluator
> #
> # Uncomment the following to basically supress evaluation of Regular
> expressions
> #org.exolab.castor.regexp=org.exolab.castor.xml.util.AlwaysTrueRegExpEvaluat
> or
>
>
> # True if all documents should be indented on output by default
> #
> org.exolab.castor.indent=true
>
>
>
> # True if xml documents should be validated by the SAX Parser
> #
> org.exolab.castor.parser.validation=false
> org.exolab.castor.parser.namespaces=false
>
> # True if all documents should be validated by the marshalling framework
> #
> org.exolab.castor.marshalling.validation=true
>
> # Comma separated list of SAX 2 features that should be enabled
> # for the default parser.
> #
> #org.exolab.castor.features=
>
>
> # True if should produce verbose messages
> #
> org.exolab.castor.debug=false
>
>
> # List of collection handlers for Java 1.1 and Java 1.2 run-times
> #
> org.exolab.castor.mapping.collections=\
> org.exolab.castor.mapping.loader.J1CollectionHandlers,\
> org.exolab.castor.mapping.loader.J2CollectionHandlers
>
>
> # List of persistence factories for the supported database servers
> #
> org.exolab.castor.jdo.engines=\
> org.exolab.castor.jdo.drivers.OracleFactory,\
> org.exolab.castor.jdo.drivers.PostgreSQLFactory,\
> org.exolab.castor.jdo.drivers.SybaseFactory,\
> org.exolab.castor.jdo.drivers.SQLServerFactory,\
> org.exolab.castor.jdo.drivers.DB2Factory,\
> org.exolab.castor.jdo.drivers.InformixFactory,\
> org.exolab.castor.jdo.drivers.HsqlFactory,\
> org.exolab.castor.jdo.drivers.InstantDBFactory,\
> org.exolab.castor.jdo.drivers.InterbaseFactory,\
> org.exolab.castor.jdo.drivers.MySQLFactory,\
> org.exolab.castor.jdo.drivers.GenericFactory
>
>
> # List of key generator factories
> #
> org.exolab.castor.jdo.keyGeneratorFactories=\
> org.exolab.castor.jdo.drivers.MaxKeyGeneratorFactory,\
> org.exolab.castor.jdo.drivers.HighLowKeyGeneratorFactory,\
> org.exolab.castor.jdo.drivers.IdentityKeyGeneratorFactory,\
> org.exolab.castor.jdo.drivers.SequenceKeyGeneratorFactory,\
> org.exolab.castor.jdo.drivers.UUIDKeyGeneratorFactory
>
>
> # Collection handlers for the source code generator
> #
> org.exolab.castor.builder.type.j2=\
> org.exolab.castor.builder.FieldInfoFactoryJ2
> org.exolab.castor.builder.type.j1=\
> org.exolab.castor.builder.FieldInfoFactory
> org.exolab.castor.builder.type.odmg=\
> org.exolab.castor.builder.FieldInfoFactoryODMG30
>
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
> unsubscribe castor-dev
>
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
> unsubscribe castor-dev
>
>
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
unsubscribe castor-dev