you have a problem with your session management/scope

2010/9/22 Allan Fagner <[email protected]>

> Fabio,
>
> I have tried that already. It solves the problem related to the queries.
> But it creates another, when loading a Catalog with no Product associated to
> it an exception is raised:
>
> "Initializing[Unavailable#]-failed to lazily initialize a collection, no
> session or session was closed"
>
> That's why kept the bag. If there's a way to workaround that, <set/> will
> fit.
>
> Thanks.
> --
> Allan Ferreira
> M: +55-31-91459275
> E: [email protected]
>
>
> On Wed, Sep 22, 2010 at 12:43 PM, Fabio Maulo <[email protected]>wrote:
>
>> What happen to the table and to the queries if you use <set> instead <bag>
>> ?
>>
>> On Wed, Sep 22, 2010 at 11:19 AM, Allan Fagner <[email protected]>wrote:
>>
>>> Hi people,
>>>
>>> I've been using NHibernate for awhile and now I'm facing a problem which
>>> I didn't find an answer so far.
>>>
>>> The thing is, I have a many-to-many relationship. Everything is working
>>> the way they suppose to (insert, update, delete and search). The only thing
>>> bugging me is that every time I update the list of Products (insert and/or
>>> delete) and save the Catalog, all records in the intermediate table
>>> (CatalogProduct) get deleted and then (re)inserted. For example: let's say I
>>> have a Catalog and this catalog is associated with three Products (1,2 and
>>> 3). If I add a fourth Product to the Catalog the three products already
>>> there are deleted from CatalogProduct table and the four products (1,2,3 and
>>> 4) are then inserted.
>>>
>>> Here are the mappings:
>>>
>>> <class name="Catalog" table="Catalog" lazy="true">
>>>
>>>
>>>     <id column="Id" name="Id" access="field.camelcase" type="Int32" 
>>> unsaved-value="0">
>>>
>>>
>>>
>>>       <generator class="identity"/>
>>>
>>>
>>>
>>>     </id>
>>>
>>>     <property column="Name" access="property" type="String" name="Name" 
>>> not-null="true" length="250" />
>>>
>>>
>>>
>>>     <property column="Code" access="property" type="Int32" name="Code" 
>>> not-null="true" />
>>>
>>>
>>>
>>>     <property column="Description" access="property" type="String" 
>>> name="Description" not-null="true" length="250" />
>>>
>>>
>>>
>>>
>>>     <bag name="products" table="CatalogProduct" lazy="true" access="field" 
>>> generic="true" cascade="save-update" inverse="false">
>>>
>>>
>>>
>>>       <key column="IdCatalog"></key>
>>>
>>>
>>>
>>>       <many-to-many class="Product" column="IdProduct"></many-to-many>
>>>
>>>
>>>
>>>     </bag>
>>>
>>>   </class>
>>>
>>> <class name="Product" table="Product" lazy="true">
>>>
>>>
>>>
>>>
>>>
>>>     <id column="Id" name="Id" access="field.camelcase" type="Int32" 
>>> unsaved-value="0">
>>>
>>>
>>>
>>>       <generator class="identity"/>
>>>
>>>
>>>
>>>     </id>
>>>
>>>     <property column="Sku" access="property" type="String" name="Sku" 
>>> not-null="true" length="250" />
>>>
>>>
>>>
>>>     <property column="Description" access="property" type="String" 
>>> name="Description" not-null="true" length="250" />
>>>
>>>
>>>
>>>     <property column="ImageUrl" access="property" type="String" 
>>> name="ImageUrl" not-null="true" length="250" />
>>>
>>>
>>>
>>>     <property column="Quantity" access="property" type="Int32" 
>>> name="Quantity" not-null="true" />
>>>
>>>
>>>
>>>
>>>   </class>
>>>
>>>
>>> This is not a problem for the client as the system is working as it
>>> should. But, it is bugging me. :)
>>>
>>> Any thoughts on how to solve that???
>>>
>>> Thanks
>>> --
>>> Allan Ferreira
>>> M: +55-31-91459275
>>> E: [email protected]
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "nhusers" group.
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected]<nhusers%[email protected]>
>>> .
>>> For more options, visit this group at
>>> http://groups.google.com/group/nhusers?hl=en.
>>>
>>
>>
>>
>> --
>> Fabio Maulo
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "nhusers" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<nhusers%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/nhusers?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to