Oh, and actually I think we can fix it in the interim per 
https://issues.apache.org/jira/browse/CAY-1744 … The "hack" in the example 
makes me blush :)

Andrus


On Oct 6, 2012, at 12:04 AM, Andrus Adamchik <and...@objectstyle.org> wrote:

> Hi Ramiro,
> 
> Finally I have something specific for you: 
> https://issues.apache.org/jira/browse/CAY-1743
> 
> In the source code attached to this Jira, I am simply blocking "readOnly" 
> status of all model relationships. The example is a completely self-conatined 
> project. It is built against 3.2M1-SNAPSHOT (SVN trunk), but it should work 
> with 3.1B1 as well. And for 3.0.x, you can simply "inline" the fancy DI 
> module code in "cayennehacks"… 
> 
> Take a look at Main.java and cayennehacks package. The "hacks" is what it 
> takes now to make vertical inheritance relationships work.
> 
>> If I try to creat a entity relationship on User I must set the target to 
>> Session entity and not WebSession, if I set it to WebSession tells me there 
>> is no mapping and if I choose the correct mapping to WebSession then as 
>> there is no entity linked to that table it complains about no target entity.
> 
> This part worked for me on 3.1B1 Modeler. 
> 
> Andrus
> 
> 
> 
> On Oct 5, 2012, at 5:28 PM, Ramiro Aparicio <ramiro.apari...@prot-on.com> 
> wrote:
> 
>> El 19/09/2012 22:12, Andrus Adamchik escribió:
>>> On Sep 19, 2012, at 11:24 AM, Ramiro Aparicio <ramiro.apari...@prot-on.com> 
>>> wrote:
>>> 
>>>> BTW I tried to do everything with 3.0.2 modeller and finally updated to 
>>>> 3.1.B1 modeller, Will the model created with 3.1.B1 modeller work with 
>>>> 3.0.2 runtime? (I want to update the runtime but just in case I can not do 
>>>> it).
>>> No, once you upgrade the Model to 3.1, there's no (automated) way to go 
>>> back to 3.0. The project structure is different in 3.1. The biggest change 
>>> is that the new projects have at most 1 domain per project. It is probably 
>>> doable by manually editing XML, but there's little point in that. After all 
>>> the only reason to use the new Modeler is if you are planning to use the 
>>> new runtime.
>>> 
>>> I'll try to find time to get to the rest of your message. I rarely if ever 
>>> use vertical inheritance, but I may try out your scenario.
>>> 
>>> Andrus
>>> 
>> 
>> Hi again,
>> Ok after the big refactoring I am now able to test this and I get this 
>> exception on commit:
>> "Cannot set the read-only flattened relationship 'toUser' in ObjEntity 
>> 'SessionLogWeb'."
>> or
>> "Cannot set the read-only flattened relationship 'runtimeRelationship1' in 
>> ObjEntity 'SessionLog'."
>> depending on which side I try to use when setting the relationship.
>> (SessionLogWeb is WebSession on my previous example and SessionLog is 
>> Session)
>> 
>> So even if only one side of the relationship is marked as read only it is 
>> not possible to set the relationship from either side, as this kind of 
>> mapping is a bit unexplored using cayenne I will happily try any different 
>> options but I would like to mantain the vertical inheritance as this is a 
>> logging table that will hold millions of records so using a shared table 
>> will waste too much space.
>> 
>> Thanks in advance.
>> 
>> Ramiro Aparicio
>> 
> 
> 

Reply via email to