Re: StackOverflowException when mutual reference exist
Huang, Huang Kai wrote: I mean that composite A has a component which uses composite B as an implementation and that composite B has a component which uses composite A as an implementation . I think this use case is fairly common, eg. [Employee] has a property refer to [Company] and [Company] has a property refer to it's [Employee]s. And when these two java components are in different composites, I'll have to define mutual referenced composite files above. Aaargh - this is the case that I was worrying about. OK - what you need to understand here is that using a composite to implement a component within a higher level composite is *NOT* a reference property. Using something as an implementation is a STRUCTURAL relationship. It means that the implementation is "part of" the containing composite. Now if you view it that way, then it does *NOT* make sense for a Company to be "built from" employees and then for the employees to be "built from" a company. That is what your use case is like. It's OK for a "Company" component to have a reference to an "Employee" component - but a reference is not the implementation of a component - it is a dependency that one component has on another. Does that make sense? Yours, Mike. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: StackOverflowException when mutual reference exist
I mean that composite A has a component which uses composite B as an implementation and that composite B has a component which uses composite A as an implementation . I think this use case is fairly common, eg. [Employee] has a property refer to [Company] and [Company] has a property refer to it's [Employee]s. And when these two java components are in different composites, I'll have to define mutual referenced composite files above. - Original Message - From: "Mike Edwards" <[EMAIL PROTECTED]> To: Sent: Monday, July 09, 2007 4:37 PM Subject: Re: StackOverflowException when mutual reference exist > Huang, > > Can you clarify what you mean please? > > What configuration of composites are you using? > > Yours, Mike. > > Huang Kai wrote: >> I'm in the case 2. >> :( >> It's error-prone >> >> - Original Message - >> From: "Simon Laws" <[EMAIL PROTECTED]> >> To: >> Sent: Friday, July 06, 2007 11:11 PM >> Subject: Re: StackOverflowException when mutual reference exist >> >> >>> On 7/6/07, Mike Edwards <[EMAIL PROTECTED]> wrote: >>>> Huang, >>>> >>>> I assume that by "reference" here, you mean a service reference? If >>>> that is so, it should work. >>>> >>>> If you mean that composite A has a component which uses composite B as >>>> an implementation and that composite B has a component which uses >>>> composite A as an implementation - then this IS an illegal cyclical >>>> usage and should generate an error. >>>> >>>> Yours, Mike. >>>> >>>> Huang Kai wrote: >>>>> When CompositeA has reference to CompositeB while CompositeB also has >>>> reference back to CompositeA, CompositeBuilderImpl.build(composite) seems >>>> went into endless loop. >>>>> I'm not very sure whether it's a bug or this kind of reference is >>>> illegal? >>>> >>>> - >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>>> Mike >>> For clarification. In the first case is the assumption that the application >>> will ensure that messages do not pass round the loop forever. >>> >>> Simon >>> > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] >
Re: StackOverflowException when mutual reference exist
Huang, Can you clarify what you mean please? What configuration of composites are you using? Yours, Mike. Huang Kai wrote: I'm in the case 2. :( It's error-prone - Original Message - From: "Simon Laws" <[EMAIL PROTECTED]> To: Sent: Friday, July 06, 2007 11:11 PM Subject: Re: StackOverflowException when mutual reference exist On 7/6/07, Mike Edwards <[EMAIL PROTECTED]> wrote: Huang, I assume that by "reference" here, you mean a service reference? If that is so, it should work. If you mean that composite A has a component which uses composite B as an implementation and that composite B has a component which uses composite A as an implementation - then this IS an illegal cyclical usage and should generate an error. Yours, Mike. Huang Kai wrote: When CompositeA has reference to CompositeB while CompositeB also has reference back to CompositeA, CompositeBuilderImpl.build(composite) seems went into endless loop. I'm not very sure whether it's a bug or this kind of reference is illegal? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Mike For clarification. In the first case is the assumption that the application will ensure that messages do not pass round the loop forever. Simon - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: StackOverflowException when mutual reference exist
I'm in the case 2. :( It's error-prone - Original Message - From: "Simon Laws" <[EMAIL PROTECTED]> To: Sent: Friday, July 06, 2007 11:11 PM Subject: Re: StackOverflowException when mutual reference exist > On 7/6/07, Mike Edwards <[EMAIL PROTECTED]> wrote: >> >> Huang, >> >> I assume that by "reference" here, you mean a service reference? If >> that is so, it should work. >> >> If you mean that composite A has a component which uses composite B as >> an implementation and that composite B has a component which uses >> composite A as an implementation - then this IS an illegal cyclical >> usage and should generate an error. >> >> Yours, Mike. >> >> Huang Kai wrote: >> > When CompositeA has reference to CompositeB while CompositeB also has >> reference back to CompositeA, CompositeBuilderImpl.build(composite) seems >> went into endless loop. >> > I'm not very sure whether it's a bug or this kind of reference is >> illegal? >> >> - >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> Mike > > For clarification. In the first case is the assumption that the application > will ensure that messages do not pass round the loop forever. > > Simon >
Re: StackOverflowException when mutual reference exist
On 7/6/07, Mike Edwards <[EMAIL PROTECTED]> wrote: Huang, I assume that by "reference" here, you mean a service reference? If that is so, it should work. If you mean that composite A has a component which uses composite B as an implementation and that composite B has a component which uses composite A as an implementation - then this IS an illegal cyclical usage and should generate an error. Yours, Mike. Huang Kai wrote: > When CompositeA has reference to CompositeB while CompositeB also has reference back to CompositeA, CompositeBuilderImpl.build(composite) seems went into endless loop. > I'm not very sure whether it's a bug or this kind of reference is illegal? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Mike For clarification. In the first case is the assumption that the application will ensure that messages do not pass round the loop forever. Simon
Re: StackOverflowException when mutual reference exist
Huang, I assume that by "reference" here, you mean a service reference? If that is so, it should work. If you mean that composite A has a component which uses composite B as an implementation and that composite B has a component which uses composite A as an implementation - then this IS an illegal cyclical usage and should generate an error. Yours, Mike. Huang Kai wrote: When CompositeA has reference to CompositeB while CompositeB also has reference back to CompositeA, CompositeBuilderImpl.build(composite) seems went into endless loop. I'm not very sure whether it's a bug or this kind of reference is illegal? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: StackOverflowException when mutual reference exist
Hi, I think it's legal to have references from both A->B and B->A. Please create a JIRA to track this issue. Thanks, Raymond - Original Message - From: "Huang Kai" <[EMAIL PROTECTED]> To: Sent: Wednesday, July 04, 2007 10:48 PM Subject: StackOverflowException when mutual reference exist When CompositeA has reference to CompositeB while CompositeB also has reference back to CompositeA, CompositeBuilderImpl.build(composite) seems went into endless loop. I'm not very sure whether it's a bug or this kind of reference is illegal? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
StackOverflowException when mutual reference exist
When CompositeA has reference to CompositeB while CompositeB also has reference back to CompositeA, CompositeBuilderImpl.build(composite) seems went into endless loop. I'm not very sure whether it's a bug or this kind of reference is illegal?