Ooops, the message didn't display as I thought. I try to post it more 
clearly:

I'm developing a FDS application with database connection and
I've mapped the relational database to POJO's with Hibernate (using
hibernate tools). In the relational database, I have a table which
maps a N:M relationship between two entities and this table has a
composite primary key as the following example shows:

MODEL       
id                   
engine    
cab           
bed
...

MODEL_PACK 
id_model
id_pack 
inclusion

PACK
id
name
category

id_model and id_pack is the composite primary key of MODEL_PACK
table. Hibernate tools generates a specific class which contains the
composite primary key. When I try to access to a row from PACK table
through an object which maps MODEL table using MODEL_PACK I get the
following exception:

[RPC Fault faultString="Unable to invoke a get operation on
destination 'ModelsPacks.hibernate' due to the following error: class
org.hibernate.PropertyAccessException:exception getting property
value with CGLIB (set hibernate.cglib.use_reflection_optimizer=false
for more info) getter of com.fds.proyecto.hibernate.ModelPackId.?."
faultCode="Server.Processing" faultDetail="null"]
at
mx.data::ConcreteDataService/http://www.adobe.com/2006/flex/mx/interna
l::dispatchFaultEvent()
[C:\dev\enterprise_bali\frameworks\mx\data\ConcreteDataService.as:1602
]
at ConcreteDataService.as$76::DataListRequestResponder/fault()
[C:\dev\enterprise_bali\frameworks\mx\data\ConcreteDataService.as:4453
]
at mx.rpc::AsyncRequest/fault()
[C:\dev\enterprise_bali\frameworks\mx\rpc\AsyncRequest.as:107]
at
NetConnectionChannel.as$40::NetConnectionMessageResponder/NetConnectio
nChannel.as$40:NetConnectionMessageResponder::statusHandler()
[C:\dev\enterprise_bali\frameworks\mx\messaging\channels\NetConnection
Channel.as:470]
at mx.messaging::MessageResponder/status()
[C:\dev\enterprise_bali\frameworks\mx\messaging\MessageResponder.as:22
5]

I have the following classes in Action Script:

Model 

id:int; 
engine:string;
... 
packs:ArrayCollection; 

ModelPack
 
id:ModelPackId; 
model:Models; 
pack:Packs; 
inclusion:String; 

Pack

id:String;
category:String;
...
models:ArrayCollection;

Which correspond to the appropriate classes in java. ModelPackId
is a class that represents the composite primary key of the
MODEL_PACK table:

modelCode:int;
packCode:String;

public function toString():String
{
return modelCode + ":" + packCode;
}

Having an object of type model:

m:Model;

I get the error when I try:

m.packs.getItemAt(1).pack

In the data-management-config.xml I have three destinations;
models.hibernate, ModelsPacks.hibernate and packs.hibernate:

<destination id="models.hibernate">
...........
<one-to-many property="packs"
destination="ModelsPacks.hibernate" lazy="true"/>
...........

<destination id="ModelsPacks.hibernate">
............
<identity property="id"
type="com.fds.proyecto.hibernate.ModelPackId"/>
<many-to-one property="model"
destination="models.hibernate" lazy="true"/>
<many-to-one property="pack"
destination="packs.hibernate" lazy="true"/>
.............

<destination id="packs.hibernate">
.............
<one-to-many property="models"
destination="ModelsPacks.hibernate" lazy="true"/>
..............

I've tried a lot of solutions but they didn't work. I hope that
anyone can help me.

Thanks in advance,

Carlos





Reply via email to