It's not impossible... If you extract the code that needs interception
into a separate class the ActionBean would not not need to be enhanced
by cglib. But I'm not sure if I really understood your problem so
excuse me if I'm wrong.

On Mon, May 25, 2009 at 2:56 AM, Michael Day <[email protected]> wrote:
> Upon further investigation, I have found that the indexed properties
> binding problem occurs because the cglib proxies lose generic types
> from the superclass.  I don't know anything about cglib, so maybe
> someone else can provide some insight.
>
> As it stands, using guice to manage ActionBeans with method
> interception appears to be impossible.
>
> On May 24, 2009, at 1:42 PM, Michael Day wrote:
>
>> Richard,
>>
>> Thanks for the suggestion.  I looked through the code, and it appears
>> that it would suffer from the same problems I identified.  I neglected
>> to mention before that the problems are only occurring with
>> ActionBeans that have been enhanced by cglib.  I'm guessing that
>> stripes-guice is working for you because your ActionBeans are not.
>>
>> On May 24, 2009, at 4:08 AM, Richard Hauswald wrote:
>>
>>> Hello Michael,
>>> try to use stripes-guice(http://www.silvermindsoftware.com/stripesguice/
>>> )
>>> and bind the interceptors in the guice module(s) using
>>> bindInterceptor. I'm using guice based injection and interceptors
>>> without any problems. Documentation is also great, so give it try and
>>> don't mix it with stripes-guicer ;-)
>>> Regards,
>>> Richard
>>>
>>> On Sun, May 24, 2009 at 9:00 AM, Michael Day <[email protected]
>>>> wrote:
>>>> I'm trying to instantiate my ActionBeans through guice so that I can
>>>> put @Transactional annotations on my event handler methods.  So far
>>>> it
>>>> seems to be my holy grail for transaction management in a web
>>>> environment, but it is proving difficult to attain.  Has anyone
>>>> successfully done this?
>>>>
>>>> I've identified two problems so far beyond those already identified
>>>> by
>>>> others on the mailing list (which were apparently solved by using an
>>>> ActionResolver similar to the one I have included below).
>>>>
>>>> 1.) @Before/@After annotations are ignored, presumably because the
>>>> BeforeAfterMethodInterceptor is not examining annotations on the
>>>> proxied ActionBean's superclass(es).
>>>>
>>>> 2.) Numeric indexed properties (item[0], item[1], etc) are not being
>>>> set on form submission.
>>>>
>>>> Other annotations may not be working either.  I have tested
>>>> @UrlBinding and @ValidationMethod, so I can confirm that they appear
>>>> to be working.
>>>>
>>>> Thanks,
>>>> Michael Day
>>>>
>>>> -------------
>>>>
>>>> public class GuiceActionResolver extends NameBasedActionResolver {
>>>>    private Injector injector;
>>>>    private Set<Class<?>> addedProxies = new HashSet<Class<?>>();
>>>>
>>>>    public void init(Configuration configuration) throws Exception {
>>>>        injector = GuiceInjectorHolder.getInjector();
>>>>        super.init(configuration);
>>>>    }
>>>>
>>>>   �...@override
>>>>    protected ActionBean makeNewActionBean(Class<? extends
>>>> ActionBean> type, ActionBeanContext context)
>>>>            throws Exception {
>>>>
>>>>        ActionBean proxiedActionBean = injector.getInstance(type);
>>>>
>>>>        if (!addedProxies.contains(proxiedActionBean.getClass())) {
>>>>            super.addActionBean(proxiedActionBean.getClass());
>>>>            addedProxies.add(proxiedActionBean.getClass());
>>>>        }
>>>>
>>>>        return proxiedActionBean;
>>>>       }
>>>> }
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
>>>> is a gathering of tech-side developers & brand creativity
>>>> professionals. Meet
>>>> the minds behind Google Creative Lab, Visual Complexity,
>>>> Processing, &
>>>> iPhoneDevCamp asthey present alongside digital heavyweights like
>>>> Barbarian
>>>> Group, R/GA, & Big Spaceship. http://www.creativitycat.com
>>>> _______________________________________________
>>>> Stripes-users mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/stripes-users
>>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
>>> is a gathering of tech-side developers & brand creativity
>>> professionals. Meet
>>> the minds behind Google Creative Lab, Visual Complexity,
>>> Processing, &
>>> iPhoneDevCamp asthey present alongside digital heavyweights like
>>> Barbarian
>>> Group, R/GA, & Big Spaceship. http://www.creativitycat.com
>>> _______________________________________________
>>> Stripes-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/stripes-users
>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
>> is a gathering of tech-side developers & brand creativity
>> professionals. Meet
>> the minds behind Google Creative Lab, Visual Complexity, Processing, &
>> iPhoneDevCamp asthey present alongside digital heavyweights like
>> Barbarian
>> Group, R/GA, & Big Spaceship. http://www.creativitycat.com
>> _______________________________________________
>> Stripes-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/stripes-users
>>
>>
>
>
> ------------------------------------------------------------------------------
> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
> is a gathering of tech-side developers & brand creativity professionals. Meet
> the minds behind Google Creative Lab, Visual Complexity, Processing, &
> iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
> Group, R/GA, & Big Spaceship. http://www.creativitycat.com
> _______________________________________________
> Stripes-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/stripes-users
>

------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
_______________________________________________
Stripes-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-users

Reply via email to