Hi guys,

I'm still having this issue and this is blocking the integration of Trans4j
into Guice. Any feedback would be very very cool :)

Kind regards,

Cédric

On Tue, Feb 22, 2011 at 12:29 PM, Cédric Vidal <[email protected]>wrote:

> Hi guys,
>
> I'm the author of Trans4j (http://code.google.com/p/trans4j/), a
> JavaBean Mapping framework (designed with simplicity in mind), and I'd
> like to integrate it into Guice, it would fit very nicely with Guice's
> philosophy. I've already managed to do the Spring integration and I'd
> like to add the Guice integration as well.
>
> Trans4j mappers are proxies handcrafted with cglib and I'd like to
> wire them using Guice. I've managed injecting them into other Guice
> components with Providers. I've managed injecting other dependencies
> into Trans4j mappers using the MembersInjectors API inside a Provider
> but I can't figure out how to inject mappers between them when they
> have cycles, which is a very common scenario and must be supported.
>
> Indeed, when injecting mappers between them in a Provder using the
> MembersInjectors I get a Stack overflow when mappers have dependency
> cycles.
>
> Guice supports dependency cycles with Linked Bindings but doesn't seem
> to support dependency cycles when using the Provider and
> MembersInjector APIs.
>
> Since, I couldn't manage to do the integration using providers, I
> tried using the AOP Interceptor approach but I failed because Trans4j
> mappers support a particular feature, dynamic polymorphic dispatch,
> which requires rerouting the method invocation to another method of
> the target object's class.
>
> And Guice relies on AOP Alliance's Method Interceptor API which
> doesn't support that use case (supports only changing the returned
> value of the invocation). But it is supported by cglib, used by
> Trans4j in standalone mode and by Guice under the cover.
>
> Any suggestion would be great :)
>
> Besides, if Guice doesn't currently support this scenario, I would be
> glad to add the support myself if the Guice team is interested.
>
> Regards,
>
> Cédric Vidal
>



-- 
Cédric

-- 
You received this message because you are subscribed to the Google Groups 
"google-guice" 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/google-guice?hl=en.

Reply via email to