You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Howard Lewis Ship <hl...@gmail.com> on 2009/06/02 19:43:52 UTC

Re: Decorating IOC Services

Because Tapestry 5 IoC is defined partially in terms of itself,
there's some "bootstrapping" that's going on. Most of the services in
T5 IoC, inlcuding TypeCoercer, are so fundamental that allows
decoration on them would result in cyclic dependencies just
instantiating them. A few aren't even instantiated as services; they
are instantiated as instances and simply exposed as services.

Oh, and it's Java's limited concept of Generics and extended types
that's failing you; there is no way to "sniff" an instance of
Collection and determine what generic types apply to it.

On Thu, May 28, 2009 at 8:33 AM, formpost <fo...@hotmail.com> wrote:
>
> I've been trying to decorate the TypeCoercer Service with no luck, and then I
> found this little line in the online docs.
>
>  It is not possible to decorate the services of the TapestryIOCModule.
>
> Why are these services so special?
>
> Why would I want to, well....
>
> I'm trying to coerce between a collection of domain types and their Ids and
> back again. I can do it with a single type, but handling collections is a
> different matter and basically tapestry 5 isn't allowing me to.
>
> Any thoughts?
>
>
> --
> View this message in context: http://www.nabble.com/Decorating-IOC-Services-tp23764254p23764254.html
> Sent from the Tapestry - Dev mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry
Director of Open Source Technology at Formos

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: Decorating IOC Services

Posted by formpost <fo...@hotmail.com>.
Limiting decoration to avoiding cyclic dependencies is understandable. 
I fully agree with you about Java's limited concept/implementation of
Generics. However, Spring seems to have found a way to "sniff" those
collection types. 
http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/core/GenericCollectionTypeResolver.html

If you have any ideas how, in T5, I can coercer an Enum backed
multi-selection component, I'm very open to ideas.

regards


Howard Lewis Ship wrote:
> 
> Because Tapestry 5 IoC is defined partially in terms of itself,
> there's some "bootstrapping" that's going on. Most of the services in
> T5 IoC, inlcuding TypeCoercer, are so fundamental that allows
> decoration on them would result in cyclic dependencies just
> instantiating them. A few aren't even instantiated as services; they
> are instantiated as instances and simply exposed as services.
> 
> Oh, and it's Java's limited concept of Generics and extended types
> that's failing you; there is no way to "sniff" an instance of
> Collection and determine what generic types apply to it.
> 
> On Thu, May 28, 2009 at 8:33 AM, formpost <fo...@hotmail.com> wrote:
>>
>> I've been trying to decorate the TypeCoercer Service with no luck, and
>> then I
>> found this little line in the online docs.
>>
>>  It is not possible to decorate the services of the TapestryIOCModule.
>>
>> Why are these services so special?
>>
>> Why would I want to, well....
>>
>> I'm trying to coerce between a collection of domain types and their Ids
>> and
>> back again. I can do it with a single type, but handling collections is a
>> different matter and basically tapestry 5 isn't allowing me to.
>>
>> Any thoughts?
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Decorating-IOC-Services-tp23764254p23764254.html
>> Sent from the Tapestry - Dev mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
> 
> 
> 
> -- 
> Howard M. Lewis Ship
> 
> Creator of Apache Tapestry
> Director of Open Source Technology at Formos
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Decorating-IOC-Services-tp23764254p24075133.html
Sent from the Tapestry - Dev mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org