If you're able to create an issue with a testcase attached to it that fails
and demonstrates your problem, that would go a long way towards helping.

sam

On Mon, Mar 28, 2011 at 4:05 PM, Cédric Vidal <[email protected]>wrote:

> 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.
>

-- 
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