I'd appreciate it if anyone could look at this for a minute and tell me if they see
any reason why the Region.getZones() method (container generated) should throw an
exception due to malformed SQL which looks like the following:
2004-11-01 16:27:25,615 DEBUG
[org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadRelationCommand.Region] Executing SQL: SELECT
REGIONCODE, FROM administrator.REGION_ZONES WHERE (REGIONCODE=?) OR (REGIONCODE=?) OR
(REGIONCODE=?)
2004-11-01 16:27:25,822 ERROR [org.jboss.ejb.plugins.LogInterceptor]
TransactionRolledbackLocalException in method: public abstract java.util.Set
com.nym.entity.region.RegionLocal.getZones() throws javax.ejb.EJBException, causedBy:
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0104N An unexpected token
"." was found following "FROM administrator". Expected tokens may include: "FROM".
SQLSTATE=42601
I'm using jboss 3.2.3. I have configurated many one-to-many relationships
successfully, but this one is kicking my ass. (I think this is the only one I have
where the entity on the many side has a primary key comprised of multiple columns.)
ejb-jar.xml:
.
.
.
<ejb-name>Region</ejb-name>
<local-home>com.foo.entity.region.RegionLocalHome</local-home>
com.foo.entity.region.RegionLocal
<ejb-class>com.foo.entity.region.ejb.RegionBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
False
<abstract-schema-name>Region</abstract-schema-name>
<cmp-field>
<field-name>regionCode</field-name>
</cmp-field>
<cmp-field>
<field-name>officeName</field-name>
</cmp-field>
<primkey-field>regionCode</primkey-field>
Get all regions
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(r) FROM Region AS r</ejb-ql>
<ejb-name>RegionZone</ejb-name>
<local-home>com.foo.entity.regionZone.RegionZoneLocalHome</local-home>
com.foo.entity.regionZone.RegionZoneLocal
<ejb-class>com.foo.entity.regionZone.ejb.RegionZoneBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.foo.entity.regionZone.RegionZonePK</prim-key-class>
False
<abstract-schema-name>RegionZone</abstract-schema-name>
<cmp-field>
<field-name>attribute</field-name>
</cmp-field>
<cmp-field>
<field-name>matchExpression</field-name>
</cmp-field>
<cmp-field>
<field-name>accessor</field-name>
</cmp-field>
.
.
.
<ejb-relation>
<ejb-relation-name>Region-RegionZone</ejb-relation-name>
<ejb-relationship-role>
<ejb-relationship-role-name>Region-Has-Many-Zones</ejb-relationship-role-name>
One
<relationship-role-source>
<ejb-name>Region</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>zones</cmr-field-name>
<cmr-field-type>java.util.Set</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>Zone-in-One-Region</ejb-relationship-role-name>
Many
<relationship-role-source>
<ejb-name>RegionZone</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>region</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
jbosscmp-jdbc.xml:
<ejb-name>Region</ejb-name>
<table-name>administrator.REGIONS</table-name>
<cmp-field>
<field-name>regionCode</field-name>
<column-name>REGIONCODE</column-name>
</cmp-field>
<cmp-field>
<field-name>officeName</field-name>
<column-name>OFFICENAME</column-name>
</cmp-field>
<ejb-name>RegionZone</ejb-name>
<table-name>administrator.REGION_ZONES</table-name>
<cmp-field>
<field-name>attribute</field-name>
<column-name>ATTRIBUTE</column-name>
</cmp-field>
<cmp-field>
<field-name>matchExpression</field-name>
<column-name>MATCHEXPRESSION</column-name>
</cmp-field>
<cmp-field>
<field-name>accessor</field-name>
<column-name>ACCESSOR</column-name>
</cmp-field>
.
.
.
<ejb-relation>
<ejb-relation-name>Region-RegionZone</ejb-relation-name>
<foreign-key-mapping/>
<ejb-relationship-role>
<ejb-relationship-role-name>Region-Has-Many-Zones</ejb-relationship-role-name>
<key-fields>
<key-field>
<field-name>regionCode</field-name>
<column-name>REGIONCODE</column-name>
</key-field>
</key-fields>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>Zone-in-One-Region</ejb-relationship-role-name>
<key-fields/>
</ejb-relationship-role>
</ejb-relation>
.
.
.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3853547#3853547
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3853547
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user