You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@deltaspike.apache.org by Luís Alves <lu...@gmail.com> on 2018/04/20 08:44:13 UTC

@Repository and @CacheResult(cacheName = "my-cache")

Hi,

@Repository is @Dependent scoped...and seems that @Dependent don't run
interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
working :(
I remember that some one proposed that @Repository could/should be
@ApplicationScoped...if  I change them do I have to worry with anything? My
EntityManager producer is the following:

    @Produces
    @RequestScoped
    public EntityManager get()
    {
        return entityManager;
    }

I suppose I'll have a different EM for each HTTP request / MDB onMessage()
/ @Scheduled(cronExpression ="....")...am I correct?

regards,
LA

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Found it:

/**
* Service interface implemented by extensions. An extension is a service
provider declared in META-INF/services.
*
* @author Greg Luck
* @since 1.0
*/
public class InterceptorExtension implements Extension {
/**
* Service interface implemented by extensions. An extension is a service
provider declared in META-INF/services.
*
* @param beforeBeanDiscoveryEvent the event to register
*/
void discoverInterceptorBindings(@Observes BeforeBeanDiscovery
beforeBeanDiscoveryEvent) {
beforeBeanDiscoveryEvent.addInterceptorBinding(CachePut.class);
beforeBeanDiscoveryEvent.addInterceptorBinding(CacheResult.class);
beforeBeanDiscoveryEvent.addInterceptorBinding(CacheRemove.class);
beforeBeanDiscoveryEvent.addInterceptorBinding(CacheRemoveAll.class);
}
}


the annotation is not there but the add the InterceptorBinding...
I don't know if this is an workaround or not..but why DS cannot "see" the
annotation?

On Fri, Apr 20, 2018 at 3:25 PM, Luís Alves <lu...@gmail.com> wrote:

> This is the reference implementation of the interceptors:
> https://github.com/jsr107/RI
> They have:
>
> <beans xmlns="http://java.sun.com/xml/ns/javaee"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xsi:schemaLocation="
> http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>     <interceptors>
>         <class>org.jsr107.ri.annotations.cdi.
> CacheResultInterceptor</class>
>         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
>         <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
> class>
>         <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</
> class>
>     </interceptors>
> </beans>
>
> and they have 2files with:
>
> org.jsr107.ri.annotations.cdi.InterceptorExtension
>
> and
>
> org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>
> The interceptors work on a normal cdi bean.
>
> On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> AFAIK there 2 ways of using interceptors with CDI:
>>
>> 1) @InterceptorBinding
>> 2) @Interceptors(..)
>>
>> We only support 1) currently.
>>
>> So i have currently no idea how @CacheResult will work even a normal CDI
>> bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
>>
>>
>>
>>
>> 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>
>> > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>> > I suppose they will tell the issue is from DS...:(
>> >
>> >
>> > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>> >
>> > > I suppose it's CDI capable.
>> > >
>> > > https://www.jcp.org/en/jsr/detail?id=107
>> > >
>> > > Red Hat
>> > > : Pete Muir   <---  is on the expert group
>> > >
>> > >
>> > >  * @author Gavin King
>> > >  * @author Pete Muir
>> > >  * @author Antoine Sabot-Durand
>> > >  */
>> > >
>> > > @Target({ TYPE, METHOD, FIELD })
>> > > @Retention(RUNTIME)
>> > > @Documented
>> > > @NormalScope
>> > > @Inherited
>> > > public @interface ApplicationScoped {
>> > >
>> > > }
>> > >
>> > >
>> > > what I don't understand is how DS look for the interceptors? Can you
>> > point
>> > > me out the code?
>> > > Isn't possible to look for all annotations even if they don't have
>> > > @InterceptorBinding and then look for the registered interceptors?
>> > >
>> > >
>> > >
>> > >
>> > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com>
>> > wrote:
>> > >
>> > >> I suppose it's CDI capable.
>> > >>
>> > >> https://www.jcp.org/en/jsr/detail?id=107
>> > >>
>> > >>
>> > >>
>> > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>> > >> andraschko.thomas@gmail.com> wrote:
>> > >>
>> > >>> Puh, i wonder why they did it without binding. CacheResult is
>> actually
>> > >>> exactly a binding for the interceptor.
>> > >>> Is it CDI compatible? Never had a look at the cache API ;)
>> > >>>
>> > >>> Even there is a bridge or something available (
>> > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this
>> would
>> > >>> work
>> > >>> with the limited ability to add interceptors to partial beans.
>> > >>>
>> > >>> I think the best solution for now is to create a own binding.
>> > >>>
>> > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > >>>
>> > >>> > uhm...that's not good :S
>> > >>> >
>> > >>> > the annotation is this one:
>> > >>> >
>> > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>> > >>> > javax/cache/annotation/CacheResult.html
>> > >>> >
>> > >>> > is there a way that using that annotation we get the interceptor
>> to
>> > >>> work?
>> > >>> > (I can implement the interceptor myself....as I said I cannot
>> modify
>> > >>> the
>> > >>> > annotation as it is javax packge)
>> > >>> >
>> > >>> >
>> > >>> >
>> > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>> > >>> > andraschko.thomas@gmail.com> wrote:
>> > >>> >
>> > >>> > > Just to be clear: I have no idea how internally CacheResult
>> works
>> > >>> but our
>> > >>> > > partial beans only supports CDI interceptors by a binding
>> > >>> > > (InterceptorBinding).
>> > >>> > > Everything else, like stated in the doc (@Interceptors,
>> > @Intercepted,
>> > >>> > > @Decorator), is not supported.
>> > >>> > >
>> > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>> > >>> > andraschko.thomas@gmail.com
>> > >>> > > >:
>> > >>> > >
>> > >>> > > > In must not work without the interceptorbinding. Do you mean
>> that
>> > >>> it
>> > >>> > does
>> > >>> > > > work without?
>> > >>> > > >
>> > >>> > > >
>> > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>> > >>> > > >
>> > >>> > > >> can you update your test to remove @InterceptorBinding? and
>> > check
>> > >>> if
>> > >>> > it
>> > >>> > > >> works?
>> > >>> > > >>
>> > >>> > > >>  javax.cache.annotation.CacheResult is standard so I don't
>> want
>> > >>> to
>> > >>> > > extend
>> > >>> > > >> it to have the @InterceptorBinding.....if this is really the
>> > >>> problem.
>> > >>> > > >>
>> > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>> > >>> luisalves00@gmail.com>
>> > >>> > > >> wrote:
>> > >>> > > >>
>> > >>> > > >> > @Retention(RUNTIME)
>> > >>> > > >> > @Target({ TYPE, METHOD })
>> > >>> > > >> > // @InterceptorBinding
>> > >>> > > >> > public @interface CustomInterceptor
>> > >>> > > >> > {
>> > >>> > > >> > }
>> > >>> > > >> >
>> > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
>> > >>> sure....what
>> > >>> > is
>> > >>> > > >> the
>> > >>> > > >> > purpose of that?
>> > >>> > > >> >
>> > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>> > >>> luisalves00@gmail.com>
>> > >>> > > >> wrote:
>> > >>> > > >> >
>> > >>> > > >> >> don't you want to rewrite your tests with the @CacheResult
>> > >>> > > interceptor
>> > >>> > > >> ;)
>> > >>> > > >> >> ? to see if it works?
>> > >>> > > >> >>
>> > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
>> > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>> > >>> > > >> >>
>> > >>> > > >> >>> No idea, debug if the interceptor is really called ;)
>> > >>> > > >> >>>
>> > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>> > luisalves00@gmail.com
>> > >>> >:
>> > >>> > > >> >>>
>> > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
>> > interceptor
>> > >>> for
>> > >>> > > the
>> > >>> > > >> >>> web app
>> > >>> > > >> >>> > beans.xml and now it gets called....SO it should work
>> for
>> > >>> the
>> > >>> > > cache
>> > >>> > > >> as
>> > >>> > > >> >>> > well. Any hint?
>> > >>> > > >> >>> >
>> > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
>> > >>> > > luisalves00@gmail.com
>> > >>> > > >> >
>> > >>> > > >> >>> > wrote:
>> > >>> > > >> >>> >
>> > >>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of
>> > yours
>> > >>> > that
>> > >>> > > >> logs
>> > >>> > > >> >>> a
>> > >>> > > >> >>> > > line):
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > @Interceptor
>> > >>> > > >> >>> > > @CustomInterceptor
>> > >>> > > >> >>> > > public class CustomInterceptorImpl implements
>> > Serializable
>> > >>> > > >> >>> > > {
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >     private static final long serialVersionUID =
>> > >>> > > >> >>> 7327752605570037403L;
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >     @Inject
>> > >>> > > >> >>> > >     private Logger logger;
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >     @AroundInvoke
>> > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
>> > >>> > > invocationContext)
>> > >>> > > >> >>> throws
>> > >>> > > >> >>> > > Exception
>> > >>> > > >> >>> > >     {
>> > >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl
>> was
>> > >>> > called");
>> > >>> > > >> >>> > >         return invocationContext.proceed();
>> > >>> > > >> >>> > >     }
>> > >>> > > >> >>> > > }
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > registered on the beans.xml (for service and repo
>> > layers):
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>> > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>> > >>> xmlns:xsi="
>> > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>> > >>> > > >> >>> > >     xsi:schemaLocation="http://
>> > java.sun.com/xml/ns/javaee
>> > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >     <interceptors>
>> > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
>> > >>> > > >> >>> > > CacheResultInterceptor</class>
>> > >>> > > >> >>> > >     ...
>> > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>> > >>> > CustomInterceptorImpl</class>
>> > >>> > > >> >>> > >     </interceptors>
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > </beans>
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > It's called on the service layer but not on the
>> > >>> @Repository :(
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>> > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >> You can try with a custom interceptor and check if
>> it's
>> > >>> > > invoked?
>> > >>> > > >> >>> > >>
>> > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>> > >>> weld-2.0.0.SP1? We
>> > >>> > > >> have a
>> > >>> > > >> >>> > >> exclusion for this in the unit test as there is
>> > something
>> > >>> > > broken,
>> > >>> > > >> >>> as you
>> > >>> > > >> >>> > >> can check in the link i posted before.
>> > >>> > > >> >>> > >> Otherwise, it would be great if you could provide a
>> > >>> unittest
>> > >>> > > for
>> > >>> > > >> the
>> > >>> > > >> >>> > data
>> > >>> > > >> >>> > >> module.
>> > >>> > > >> >>> > >> I don't have time to prepare it by myself.
>> > >>> > > >> >>> > >>
>> > >>> > > >> >>> > >>
>> > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>> > >>> luisalves00@gmail.com
>> > >>> > >:
>> > >>> > > >> >>> > >>
>> > >>> > > >> >>> > >> > So far no success...@CacheResult on
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >> > @ApplicationScoped
>> > >>> > > >> >>> > >> > @Repository
>> > >>> > > >> >>> > >> > public abstract class SomeRepository
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
>> > wrong.
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>> > >>> > > >> >>> luisalves00@gmail.com>
>> > >>> > > >> >>> > >> > wrote:
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but
>> > >>> still
>> > >>> > > can't
>> > >>> > > >> >>> get the
>> > >>> > > >> >>> > >> > cache
>> > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>> > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee
>> "
>> > >>> > > xmlns:xsi="
>> > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>> > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>> > >>> > java.sun.com/xml/ns/javaee
>> > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
>> ">
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > >     <interceptors>
>> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>> > >>> > > >> >>> > >> > > class>
>> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>> > >>> > > >> >>> > >> tor</
>> > >>> > > >> >>> > >> > > class>
>> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>> > >>> > > >> >>> > >> class>
>> > >>> > > >> >>> > >> > >     </interceptors>
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > > </beans>
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > > LA
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>> > >>> > > >> >>> luisalves00@gmail.com
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >> > > wrote:
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > >> Thanks Thomas,
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >> if I understood correctly if they are on the
>> > >>> bean.xml
>> > >>> > they
>> > >>> > > >> >>> should
>> > >>> > > >> >>> > >> works
>> > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
>> > >>> getting:
>> > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>> > >>> > > >> l.RepositoryDefinitionException:
>> > >>> > > >> >>> > >> > >> Repository creation for class class
>> > >>> CustomBaseRepository
>> > >>> > > >> >>> failed. Is
>> > >>> > > >> >>> > >> it
>> > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this base
>> > >>> class
>> > >>> > for
>> > >>> > > >> some
>> > >>> > > >> >>> > >> > repositories
>> > >>> > > >> >>> > >> > >> for some similar behavior:
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
>> > >>> extends
>> > >>> > > >> >>> > >> DomainObject<K>, K
>> > >>> > > >> >>> > >> > >> extends Serializable>
>> > >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
>> > >>> > > >> >>> > >> > >> {
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to
>> work
>> > >>> with
>> > >>> > the
>> > >>> > > >> >>> Repos...
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
>> > Andraschko
>> > >>> <
>> > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >>> See:
>> > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>> > >>> > > >> aspike/tree/master/deltaspike/
>> > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>> > >>> > > >> test/java/org/apache/deltaspik
>> > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>> > >>> > > >> >>> > >> > >>>
>> > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>> > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>> > >>> > > >> >>> > >> > >>>
>> > >>> > > >> >>> > >> > >>> > Interceptors in generell should be supported
>> > but
>> > >>> only
>> > >>> > > via
>> > >>> > > >> >>> custom
>> > >>> > > >> >>> > >> > >>> binding -
>> > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
>> > >>> @Decorator"
>> > >>> > > >> >>> > >> > >>> >
>> > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
>> > >>> > > >> >>> luisalves00@gmail.com>:
>> > >>> > > >> >>> > >> > >>> >
>> > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
>> actually a
>> > >>> > > >> >>> > @PartialBeanBinding
>> > >>> > > >> >>> > >> > and
>> > >>> > > >> >>> > >> > >>> I
>> > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied
>> via
>> > >>> > > >> >>> @Interceptors,
>> > >>> > > >> >>> > >> > >>> @Intercepted
>> > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
>> > proxies!
>> > >>> > > >> "...does
>> > >>> > > >> >>> it
>> > >>> > > >> >>> > >> means
>> > >>> > > >> >>> > >> > >>> that
>> > >>> > > >> >>> > >> > >>> >> I'm
>> > >>> > > >> >>> > >> > >>> >> screwed ;)?
>> > >>> > > >> >>> > >> > >>> >>
>> > >>> > > >> >>> > >> > >>> >> LA
>> > >>> > > >> >>> > >> > >>> >>
>> > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
>> Alves <
>> > >>> > > >> >>> > >> luisalves00@gmail.com
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> > >>> >> wrote:
>> > >>> > > >> >>> > >> > >>> >>
>> > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
>> interceptor
>> > >>> is
>> > >>> > not
>> > >>> > > >> >>> working
>> > >>> > > >> >>> > :(
>> > >>> > > >> >>> > >> > can't
>> > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository
>> methods
>> > be
>> > >>> > > >> >>> intercepted?
>> > >>> > > >> >>> > >> > >>> >> >
>> > >>> > > >> >>> > >> > >>> >> >
>> > >>> > > >> >>> > >> > >>> >> >
>> > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís
>> Alves
>> > <
>> > >>> > > >> >>> > >> > luisalves00@gmail.com>
>> > >>> > > >> >>> > >> > >>> >> wrote:
>> > >>> > > >> >>> > >> > >>> >> >
>> > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I
>> > >>> guess
>> > >>> > it's
>> > >>> > > >> like
>> > >>> > > >> >>> > >> > Spring's
>> > >>> > > >> >>> > >> > >>> >> >> repositories.
>> > >>> > > >> >>> > >> > >>> >> >>
>> > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
>> > Alves <
>> > >>> > > >> >>> > >> > luisalves00@gmail.com
>> > >>> > > >> >>> > >> > >>> >
>> > >>> > > >> >>> > >> > >>> >> >> wrote:
>> > >>> > > >> >>> > >> > >>> >> >>
>> > >>> > > >> >>> > >> > >>> >> >>> Hi,
>> > >>> > > >> >>> > >> > >>> >> >>>
>> > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and
>> > seems
>> > >>> > that
>> > >>> > > >> >>> > @Dependent
>> > >>> > > >> >>> > >> > >>> don't run
>> > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>> @CacheResult(cacheName =
>> > >>> > > >> "my-cache")
>> > >>> > > >> >>> > >> annotation
>> > >>> > > >> >>> > >> > >>> isn't
>> > >>> > > >> >>> > >> > >>> >> >>> working :(
>> > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
>> > >>> > @Repository
>> > >>> > > >> >>> > >> could/should
>> > >>> > > >> >>> > >> > be
>> > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them
>> do
>> > I
>> > >>> have
>> > >>> > > to
>> > >>> > > >> >>> worry
>> > >>> > > >> >>> > >> with
>> > >>> > > >> >>> > >> > >>> >> anything? My
>> > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
>> following:
>> > >>> > > >> >>> > >> > >>> >> >>>
>> > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>> > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>> > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
>> > >>> > > >> >>> > >> > >>> >> >>>     {
>> > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>> > >>> > > >> >>> > >> > >>> >> >>>     }
>> > >>> > > >> >>> > >> > >>> >> >>>
>> > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for
>> > each
>> > >>> HTTP
>> > >>> > > >> >>> request /
>> > >>> > > >> >>> > >> MDB
>> > >>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
>> > >>> > > >> ="....")...am I
>> > >>> > > >> >>> > >> correct?
>> > >>> > > >> >>> > >> > >>> >> >>>
>> > >>> > > >> >>> > >> > >>> >> >>> regards,
>> > >>> > > >> >>> > >> > >>> >> >>> LA
>> > >>> > > >> >>> > >> > >>> >> >>>
>> > >>> > > >> >>> > >> > >>> >> >>
>> > >>> > > >> >>> > >> > >>> >> >>
>> > >>> > > >> >>> > >> > >>> >> >
>> > >>> > > >> >>> > >> > >>> >>
>> > >>> > > >> >>> > >> > >>> >
>> > >>> > > >> >>> > >> > >>> >
>> > >>> > > >> >>> > >> > >>>
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >>
>> > >>> > > >> >>> > >> > >
>> > >>> > > >> >>> > >> >
>> > >>> > > >> >>> > >>
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> > >
>> > >>> > > >> >>> >
>> > >>> > > >> >>>
>> > >>> > > >> >>
>> > >>> > > >> >>
>> > >>> > > >> >
>> > >>> > > >>
>> > >>> > > >
>> > >>> > >
>> > >>> >
>> > >>>
>> > >>
>> > >>
>> > >
>> >
>>
>
>

RE: @Repository and @CacheResult(cacheName = "my-cache")

Posted by "Astley, Colin (C.J.)" <ca...@ford.com>.
Hello,

I'm writing to let you know that I tested 1.8.x with our applications and it works. I'm the one Thomas backported a fix for it to run on WAS 8 for.

Thanks,
Colin

-----Original Message-----
From: Thomas Andraschko <an...@gmail.com> 
Sent: Tuesday, April 24, 2018 4:48 AM
To: users@deltaspike.apache.org
Subject: Re: @Repository and @CacheResult(cacheName = "my-cache")

I could port it to 1.8.x.

@mark/gerhard:
When do we plan a 1.8.x release?

2018-04-24 10:43 GMT+02:00 Luís Alves <lu...@gmail.com>:

> Thomas fixed https://issues.apache.org/jira/browse/DELTASPIKE-1339. I've
> tested with the trunk and now...
>
> @Repository
> @ApplicationScoped
> public abstract class LocationRepository extends
> AbstractEntityRepository<Location, Long>
> {
> ...
>     *@CacheResult(cacheName = "cache-name")*
>     public Location findLocationById(Long id)
>     {
>         return findBy(id);
>     }
>
> ....
>
> works as expected.
>
> Since this is related with JCACHE (JSR-107) I was wondering if you can do a
> maintenance release (1.8.2)? I'm not sure if other users do JCache in
> Repositories.
>
> best regards,
> LA
>
>
> On Mon, Apr 23, 2018 at 1:36 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > Should be fixed now by DELTASPIKE-1339.
> >
> > 2018-04-23 11:31 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> > > when:
> > >
> > > //Call the annotated method
> > >       result = this.proceed(invocation);
> > >
> > > org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext.
> > > getProceedOriginalReturnValue()  <-- the correct value is here, but is
> > > not used...
> > >
> > >
> > >
> > > On Mon, Apr 23, 2018 at 10:25 AM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > >
> > >> well...I think the null is cause by the invocation order...since the
> > >> cache is executed first I think it gets the return from the other
> > >> interceptor which is null....nevertheless this is also a weird
> behavior,
> > >> because I probably can't have the cache annotation mixed with other
> > >> annotation, such as logging or other stuff, because the result will
> not
> > be
> > >> the expected one.
> > >>
> > >>
> > >>
> > >> On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com>
> > >> wrote:
> > >>
> > >>> also with:
> > >>>
> > >>>  @CustomInterceptor
> > >>>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
> > >>>     public Location findLocationById(@CacheKey Integer locationId)
> > >>>
> > >>> my cache never get's populated....on org.jsr107.ri.annotations.Abst
> > >>> ractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we
> > >>> have this chunk of code:
> > >>>
> > >>> try {
> > >>>       //Call the annotated method
> > >>>       result = this.proceed(invocation); //this returns null even if
> > >>> find returns a location....so I also suspect that's something wrong
> > with
> > >>> the delegation...
> > >>>
> > >>>       //Cache non-null result
> > >>>       if (result != null) {
> > >>>         cache.put(cacheKey, result);
> > >>>       }
> > >>>
> > >>>       return result;
> > >>>     }
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
> > >>> wrote:
> > >>>
> > >>>> something in the DelegateManualInvocationHandler vs
> > >>>> InterceptManualInvocationHandler....
> > >>>>
> > >>>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
> > >>>> wrote:
> > >>>>
> > >>>>> Stack without the @CustomInterceptor:
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> Stack with the  @CustomInterceptor:
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> Can't understand the different behavior :( seem like there's a
> > >>>>> previous lookup for @InterceptorBinding annotations...and since
> none
> > was
> > >>>>> found it has skipped the method...but the code tells
> otherwise...any
> > idea?
> > >>>>>
> > >>>>>
> > >>>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <luisalves00@gmail.com
> >
> > >>>>> wrote:
> > >>>>>
> > >>>>>> so far I think the *method*.getDeclaredAnnotations() when I don't
> > >>>>>> have the @CustomInterceptor is the findBy instead of the
> > >>>>>> findLocationById...but I can't understand why :(
> > >>>>>> that's why no annotation it's on the list, but makes no sense. I'm
> > >>>>>> going to try to figure out the behaviour with and without the
> > >>>>>> @CustomInterceptor.
> > >>>>>>
> > >>>>>>
> > >>>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
> > >>>>>> andraschko.thomas@gmail.com> wrote:
> > >>>>>>
> > >>>>>>> do you mean that method.getDeclaredAnnotations does not return
> > >>>>>>> CacheResult?
> > >>>>>>>
> > >>>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >>>>>>>
> > >>>>>>> > Good morning,
> > >>>>>>> >
> > >>>>>>> > there's still something weird. Only works when I got the
> > >>>>>>> @CustomInterceptor
> > >>>>>>> > there.
> > >>>>>>> >
> > >>>>>>> >     @CacheResult(cacheName = "loc-cache")
> > >>>>>>> >     @CustomInterceptor  //only seems to work when I have this
> > >>>>>>> annotation
> > >>>>>>> > here
> > >>>>>>> >     public Location findLocationById(@CacheKey Integer locId)
> > >>>>>>> >     {
> > >>>>>>> >         //just a wrapper for caching...
> > >>>>>>> >         return findBy(locId);
> > >>>>>>> >     }
> > >>>>>>> >
> > >>>>>>> > I'm trying to understand from the trace why the @CacheResult is
> > >>>>>>> not visible
> > >>>>>>> > alone...
> > >>>>>>> >
> > >>>>>>> >  addInterceptorBindings(beanManager, bindings,
> > >>>>>>> > method.getDeclaredAnnotations());  <--should see all the
> > >>>>>>> annotation...
> > >>>>>>> >
> > >>>>>>> >
> > >>>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
> > >>>>>>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> >
> > >>>>>>> > > Would be great if you could create a issue + unittest, so i
> can
> > >>>>>>> fix it
> > >>>>>>> > next
> > >>>>>>> > > week.
> > >>>>>>> > >
> > >>>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>>>>>> > >
> > >>>>>>> > > > I have to leave :( don't do any change until I can confirm
> > >>>>>>> everything
> > >>>>>>> > ;(
> > >>>>>>> > > >
> > >>>>>>> > > > have a nice weekend.
> > >>>>>>> > > >
> > >>>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > wrote:
> > >>>>>>> > > >
> > >>>>>>> > > > > well....I think we might have an issue with the proceed
> > part:
> > >>>>>>> > > > >
> > >>>>>>> > > > >  try {
> > >>>>>>> > > > >       //Call the annotated method
> > >>>>>>> > > > >       result = this.proceed(invocation); <-- this is not
> > >>>>>>> calling my
> > >>>>>>> > > > > method...I think is because the invocation is
> > >>>>>>> > > > org.apache.deltaspike.proxy.
> > >>>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead
> > of
> > >>>>>>> my
> > >>>>>>> > method
> > >>>>>>> > > :(
> > >>>>>>> > > > >
> > >>>>>>> > > > > any ideas?
> > >>>>>>> > > > >
> > >>>>>>> > > > >
> > >>>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > > wrote:
> > >>>>>>> > > > >
> > >>>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
> > >>>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> not sure the cache is actually working but I think it's
> > not
> > >>>>>>> related
> > >>>>>>> > > with
> > >>>>>>> > > > >> DS. If possible release a version with the fix:
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> @ApplicationScoped
> > >>>>>>> > > > >> @Specializes
> > >>>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup
> > extends
> > >>>>>>> > > > >> InterceptorLookup
> > >>>>>>> > > > >> {
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>     @Override
> > >>>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
> > >>>>>>> beanManager,
> > >>>>>>> > > > >> ArrayList<Annotation> bindings,
> > >>>>>>> > > > >>             Annotation[] declaredAnnotations)
> > >>>>>>> > > > >>     {
> > >>>>>>> > > > >>         for (Annotation annotation :
> declaredAnnotations)
> > >>>>>>> > > > >>         {
> > >>>>>>> > > > >>             if (bindings.contains(annotation))
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 continue;
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>             Class<? extends Annotation> annotationType =
> > >>>>>>> > > > >> annotation.annotationType();
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
> > >>>>>>> > annotationType))*
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 bindings.add(annotation);
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>             if (beanManager.isStereotype(
> annotationType))
> > >>>>>>> *///fun
> > >>>>>>> > > part
> > >>>>>>> > > > >> is that here is well done ;)*
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 for (Annotation subAnnotation :
> > >>>>>>> > > > >> annotationType.getDeclaredAnnotations())
> > >>>>>>> > > > >>                 {
> > >>>>>>> > > > >>                     if (bindings.contains(
> subAnnotation))
> > >>>>>>> > > > >>                     {
> > >>>>>>> > > > >>                         continue;
> > >>>>>>> > > > >>                     }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>                     if (subAnnotation.annotationType(
> > >>>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
> > >>>>>>> > > > >>                     {
> > >>>>>>> > > > >>                         bindings.add(subAnnotation);
> > >>>>>>> > > > >>                     }
> > >>>>>>> > > > >>                 }
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>         }
> > >>>>>>> > > > >>     }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> Thanks very much Thomas :)
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > > >> wrote:
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
> > >>>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com
> > >>>>>>> > >
> > >>>>>>> > > > >>> wrote:
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup?
> > >>>>>>> which jar I
> > >>>>>>> > > have
> > >>>>>>> > > > >>>> to import?!
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
> > >>>>>>> > luisalves00@gmail.com>
> > >>>>>>> > > > >>>> wrote:
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>>> I'll try....@Specializes on
> > >>>>>>> CustomDeltaSpikeProxyIntercept
> > >>>>>>> > orLookup
> > >>>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do
> the
> > >>>>>>> trick.
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> > >>>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
> > >>>>>>> /2.0/javax/enterprise/inject/s
> > >>>>>>> > > > >>>>>> pi/BeanManager.html#isIntercep
> > >>>>>>> torBinding-java.lang.Class-
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> Would be great if you can test it, create a issue
> and
> > >>>>>>> provide a
> > >>>>>>> > > > patch.
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any
> > CDI
> > >>>>>>> expert
> > >>>>>>> > on
> > >>>>>>> > > > the
> > >>>>>>> > > > >>>>>> mailing
> > >>>>>>> > > > >>>>>> > list that want to help? ;)
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
> > >>>>>>> /7/api/javax/enterprise/inject
> > >>>>>>> > > /spi/
> > >>>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
> > >>>>>>> terceptorBinding-javax.enterpr
> > >>>>>>> > > > >>>>>> ise.inject.spi
> > >>>>>>> > > > >>>>>> > .
> > >>>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible
> > to
> > >>>>>>> > > > >>>>>> (annotationType.
> > >>>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...
> we
> > >>>>>>> need some
> > >>>>>>> > > > >>>>>> runtime way
> > >>>>>>> > > > >>>>>> > to check it...
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > BTW if a solutions is found can you make it
> > available
> > >>>>>>> on
> > >>>>>>> > 1.8.2?
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas
> Andraschko <
> > >>>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding
> dynamically:
> > >>>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
> > >>>>>>> lob/master/cache-annotations-
> > >>>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
> > >>>>>>> c/main/java/org/jsr107/ri/
> > >>>>>>> > anno
> > >>>>>>> > > > >>>>>> tations/cdi/
> > >>>>>>> > > > >>>>>> > > InterceptorExtension.java
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > Just check our code here:
> > >>>>>>> > > > >>>>>> > > https://github.com/apache/
> deltaspike/blob/master/
> > >>>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
> > >>>>>>> rc/main/java/org/apache/
> > >>>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
> > >>>>>>> > DeltaSpikeProxyInterceptorLo
> > >>>>>>> > > ok
> > >>>>>>> > > > >>>>>> > up.java#L90
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation
> > is a
> > >>>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> binding
> > >>>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API).
> > >>>>>>> Then your
> > >>>>>>> > case
> > >>>>>>> > > > >>>>>> should
> > >>>>>>> > > > >>>>>> > work.
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
> > >>>>>>> > luisalves00@gmail.com
> > >>>>>>> > > >:
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > > This is the reference implementation of the
> > >>>>>>> interceptors:
> > >>>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
> > >>>>>>> > > > >>>>>> > > > They have:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/
> xml/ns/javaee
> > "
> > >>>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
> > >>>>>>> > 2001/XMLSchema-instance
> > >>>>>>> > > "
> > >>>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
> > >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/
> javaee/beans_1_0.xsd
> > ">
> > >>>>>>> > > > >>>>>> > > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>>> > > > >>>>>> > CachePutInterceptor</class>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > >>>>>>> > > ns.cdi.CacheRemoveEntryInterce
> > >>>>>>> > > > >>>>>> ptor</
> > >>>>>>> > > > >>>>>> > class>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > >>>>>>> > > ns.cdi.CacheRemoveAllIntercept
> > >>>>>>> > > > >>>>>> or</class>
> > >>>>>>> > > > >>>>>> > > >     </interceptors>
> > >>>>>>> > > > >>>>>> > > > </beans>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > and they have 2files with:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> > >>>>>>> InterceptorExtension
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > and
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> > >>>>>>> CdiAnnotationProviderImpl
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas
> > >>>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors
> with
> > >>>>>>> CDI:
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
> > >>>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > We only support 1) currently.
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult
> > >>>>>>> will work
> > >>>>>>> > > even
> > >>>>>>> > > > a
> > >>>>>>> > > > >>>>>> normal
> > >>>>>>> > > > >>>>>> > > CDI
> > >>>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via
> > the
> > >>>>>>> > "normal"
> > >>>>>>> > > > CDI
> > >>>>>>> > > > >>>>>> way.
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> > >>>>>>> > > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> >:
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> > >>>>>>> > > > jsr107spec/issues/401
> > >>>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
> > >>>>>>> DS...:(
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís
> Alves
> > <
> > >>>>>>> > > > >>>>>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > > > wrote:
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/
> detail?id=107
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > Red Hat
> > >>>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert
> group
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> > >>>>>>> > > > >>>>>> > > > > > >  */
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > >>>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
> > >>>>>>> > > > >>>>>> > > > > > > @Documented
> > >>>>>>> > > > >>>>>> > > > > > > @NormalScope
> > >>>>>>> > > > >>>>>> > > > > > > @Inherited
> > >>>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > }
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look
> for
> > >>>>>>> the
> > >>>>>>> > > > >>>>>> interceptors? Can
> > >>>>>>> > > > >>>>>> > > you
> > >>>>>>> > > > >>>>>> > > > > > point
> > >>>>>>> > > > >>>>>> > > > > > > me out the code?
> > >>>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all
> annotations
> > >>>>>>> even if
> > >>>>>>> > > they
> > >>>>>>> > > > >>>>>> don't
> > >>>>>>> > > > >>>>>> > have
> > >>>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for
> the
> > >>>>>>> registered
> > >>>>>>> > > > >>>>>> > interceptors?
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís
> > Alves
> > >>>>>>> <
> > >>>>>>> > > > >>>>>> > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > > > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/
> detail?id=107
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
> > >>>>>>> Andraschko
> > >>>>>>> > <
> > >>>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
> > >>>>>>> binding.
> > >>>>>>> > > > >>>>>> CacheResult is
> > >>>>>>> > > > >>>>>> > > > > actually
> > >>>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> > >>>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look
> > at
> > >>>>>>> the
> > >>>>>>> > cache
> > >>>>>>> > > > API
> > >>>>>>> > > > >>>>>> ;)
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
> > >>>>>>> available (
> > >>>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/
> jcache-cdi
> > ),
> > >>>>>>> i'm not
> > >>>>>>> > > > sure
> > >>>>>>> > > > >>>>>> if this
> > >>>>>>> > > > >>>>>> > > > would
> > >>>>>>> > > > >>>>>> > > > > > >>> work
> > >>>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
> > >>>>>>> interceptors to
> > >>>>>>> > > > partial
> > >>>>>>> > > > >>>>>> beans.
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is
> to
> > >>>>>>> create a
> > >>>>>>> > own
> > >>>>>>> > > > >>>>>> binding.
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves
> <
> > >>>>>>> > > > >>>>>> luisalves00@gmail.com>:
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> > >>>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
> > >>>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/
> > CacheResult.html
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that
> > >>>>>>> annotation we get
> > >>>>>>> > > the
> > >>>>>>> > > > >>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> > > > to
> > >>>>>>> > > > >>>>>> > > > > > >>> work?
> > >>>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
> > >>>>>>> myself....as I
> > >>>>>>> > > said
> > >>>>>>> > > > >>>>>> I cannot
> > >>>>>>> > > > >>>>>> > > > > modify
> > >>>>>>> > > > >>>>>> > > > > > >>> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM,
> > Thomas
> > >>>>>>> > > Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea
> how
> > >>>>>>> > internally
> > >>>>>>> > > > >>>>>> CacheResult
> > >>>>>>> > > > >>>>>> > > > works
> > >>>>>>> > > > >>>>>> > > > > > >>> but our
> > >>>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
> > >>>>>>> interceptors
> > >>>>>>> > by
> > >>>>>>> > > a
> > >>>>>>> > > > >>>>>> binding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
> > >>>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in
> the
> > >>>>>>> doc
> > >>>>>>> > > > >>>>>> (@Interceptors,
> > >>>>>>> > > > >>>>>> > > > > > @Intercepted,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
> > >>>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
> > >>>>>>> > > interceptorbinding.
> > >>>>>>> > > > >>>>>> Do you
> > >>>>>>> > > > >>>>>> > > mean
> > >>>>>>> > > > >>>>>> > > > > that
> > >>>>>>> > > > >>>>>> > > > > > >>> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > does
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > work without?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018
> schrieb
> > >>>>>>> Luís
> > >>>>>>> > Alves
> > >>>>>>> > > :
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to
> > remove
> > >>>>>>> > > > >>>>>> @InterceptorBinding?
> > >>>>>>> > > > >>>>>> > > and
> > >>>>>>> > > > >>>>>> > > > > > check
> > >>>>>>> > > > >>>>>> > > > > > >>> if
> > >>>>>>> > > > >>>>>> > > > > > >>> > it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> works?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.
> > CacheResult
> > >>>>>>> is
> > >>>>>>> > > > standard
> > >>>>>>> > > > >>>>>> so I
> > >>>>>>> > > > >>>>>> > > don't
> > >>>>>>> > > > >>>>>> > > > > want
> > >>>>>>> > > > >>>>>> > > > > > >>> to
> > >>>>>>> > > > >>>>>> > > > > > >>> > > extend
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
> > >>>>>>> @InterceptorBinding.....if
> > >>>>>>> > > this
> > >>>>>>> > > > >>>>>> is really
> > >>>>>>> > > > >>>>>> > > the
> > >>>>>>> > > > >>>>>> > > > > > >>> problem.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11
> PM,
> > >>>>>>> Luís
> > >>>>>>> > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface
> > >>>>>>> CustomInterceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
> > >>>>>>> > > @InterceptorBinding....but
> > >>>>>>> > > > >>>>>> not 100%
> > >>>>>>> > > > >>>>>> > > > > > >>> sure....what
> > >>>>>>> > > > >>>>>> > > > > > >>> > is
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06
> > PM,
> > >>>>>>> Luís
> > >>>>>>> > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite
> your
> > >>>>>>> tests
> > >>>>>>> > with
> > >>>>>>> > > > the
> > >>>>>>> > > > >>>>>> > > > @CacheResult
> > >>>>>>> > > > >>>>>> > > > > > >>> > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at
> 12:57
> > >>>>>>> PM, Thomas
> > >>>>>>> > > > >>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com
> >
> > >>>>>>> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
> > >>>>>>> interceptor is
> > >>>>>>> > > really
> > >>>>>>> > > > >>>>>> called
> > >>>>>>> > > > >>>>>> > ;)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00
> > >>>>>>> Luís Alves <
> > >>>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the
> > @CustomInterceptor
> > >>>>>>> > > declaration
> > >>>>>>> > > > >>>>>> of the
> > >>>>>>> > > > >>>>>> > > > > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
> > >>>>>>> > called....SO
> > >>>>>>> > > it
> > >>>>>>> > > > >>>>>> should
> > >>>>>>> > > > >>>>>> > > work
> > >>>>>>> > > > >>>>>> > > > > for
> > >>>>>>> > > > >>>>>> > > > > > >>> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > cache
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> as
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at
> > >>>>>>> 12:43 PM,
> > >>>>>>> > Luís
> > >>>>>>> > > > >>>>>> Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a
> custom
> > >>>>>>> one (in
> > >>>>>>> > fact
> > >>>>>>> > > > is
> > >>>>>>> > > > >>>>>> a
> > >>>>>>> > > > >>>>>> > "copy"
> > >>>>>>> > > > >>>>>> > > of
> > >>>>>>> > > > >>>>>> > > > > > yours
> > >>>>>>> > > > >>>>>> > > > > > >>> > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> logs
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
> > >>>>>>> CustomInterceptorImpl
> > >>>>>>> > > > >>>>>> implements
> > >>>>>>> > > > >>>>>> > > > > > Serializable
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static
> final
> > >>>>>>> long
> > >>>>>>> > > > >>>>>> serialVersionUID =
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger
> > logger;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> > >>>>>>> > > > >>>>>> interceptIt(InvocationContext
> > >>>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info
> ("yay
> > >>>>>>> :)
> > >>>>>>> > > > >>>>>> > CustomInterceptorImpl
> > >>>>>>> > > > >>>>>> > > > was
> > >>>>>>> > > > >>>>>> > > > > > >>> > called");
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
> > >>>>>>> > > > >>>>>> invocationContext.proceed();
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the
> > >>>>>>> beans.xml (for
> > >>>>>>> > > > service
> > >>>>>>> > > > >>>>>> and
> > >>>>>>> > > > >>>>>> > repo
> > >>>>>>> > > > >>>>>> > > > > > layers):
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> > >>>>>>> > > encoding="UTF-8"?>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> > >>>>>>> > > http://java.sun.com/xml
> > >>>>>>> > > > >>>>>> /ns/javaee
> > >>>>>>> > > > >>>>>> > "
> > >>>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> http://www.w3.org/2001/XMLSche
> > >>>>>>> > > > >>>>>> ma-instance"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>>  xsi:schemaLocation="http://
> > >>>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> http://java.sun.com/xml/ns/jav
> > >>>>>>> > > > >>>>>> aee/beans_1_0.xsd
> > >>>>>>> > > > >>>>>> > ">
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> >  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> ons.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>>  <class>eu.gls.ddtm.config.
> > >>>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the
> > service
> > >>>>>>> layer
> > >>>>>>> > but
> > >>>>>>> > > > not
> > >>>>>>> > > > >>>>>> on the
> > >>>>>>> > > > >>>>>> > > > > > >>> @Repository :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10
> > >>>>>>> (CDI
> > >>>>>>> > 1.x)...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
> > >>>>>>> 11:50 AM,
> > >>>>>>> > > > Thomas
> > >>>>>>> > > > >>>>>> > > Andraschko
> > >>>>>>> > > > >>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> andraschko.thomas@gmail.com>
> > >>>>>>> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a
> > custom
> > >>>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> and check
> > >>>>>>> > > > >>>>>> > > if
> > >>>>>>> > > > >>>>>> > > > > it's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > invoked?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> > >>>>>>> > > > weld-2.0.0.Final
> > >>>>>>> > > > >>>>>> or
> > >>>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> have a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in
> > the
> > >>>>>>> unit
> > >>>>>>> > test
> > >>>>>>> > > as
> > >>>>>>> > > > >>>>>> there is
> > >>>>>>> > > > >>>>>> > > > > > something
> > >>>>>>> > > > >>>>>> > > > > > >>> > > broken,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link
> i
> > >>>>>>> posted
> > >>>>>>> > > before.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
> > >>>>>>> great if
> > >>>>>>> > you
> > >>>>>>> > > > >>>>>> could
> > >>>>>>> > > > >>>>>> > > provide a
> > >>>>>>> > > > >>>>>> > > > > > >>> unittest
> > >>>>>>> > > > >>>>>> > > > > > >>> > > for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
> > >>>>>>> prepare it by
> > >>>>>>> > > > >>>>>> myself.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40
> > >>>>>>> GMT+02:00 Luís
> > >>>>>>> > > Alves
> > >>>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
> > >>>>>>> success...@CacheResult
> > >>>>>>> > > on
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract
> class
> > >>>>>>> > > SomeRepository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work
> > :S
> > >>>>>>> not sure
> > >>>>>>> > > > what
> > >>>>>>> > > > >>>>>> I'm
> > >>>>>>> > > > >>>>>> > doing
> > >>>>>>> > > > >>>>>> > > > > > wrong.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018
> > at
> > >>>>>>> 11:03
> > >>>>>>> > AM,
> > >>>>>>> > > > >>>>>> Luís Alves
> > >>>>>>> > > > >>>>>> > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> > >>>>>>> > > CustomBaseRepository
> > >>>>>>> > > > >>>>>> for
> > >>>>>>> > > > >>>>>> > > > now...but
> > >>>>>>> > > > >>>>>> > > > > > >>> still
> > >>>>>>> > > > >>>>>> > > > > > >>> > > can't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
> > >>>>>>> work...here is
> > >>>>>>> > my
> > >>>>>>> > > > >>>>>> beans.xml:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml
> version="1.0"
> > >>>>>>> > > > >>>>>> encoding="UTF-8"?>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> > >>>>>>> > > > http://java.sun.com/
> > >>>>>>> > > > >>>>>> > > > xml/ns/javaee"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > http://www.w3.org/2001/XMLSche
> > >>>>>>> > > > >>>>>> ma-instance"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> >  xsi:schemaLocation="http://
> > >>>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> http://java.sun.com/xml/ns/
> > >>>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
> > >>>>>>> > > > >>>>>> > > > > ">
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>>  <class>org.jsr107.ri.
> > >>>>>>> > > > >>>>>> > > annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>>  <class>org.jsr107.ri.
> > >>>>>>> > > > >>>>>> > > annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> CacheRemoveEntryInterceptor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > ons.cdi.CacheRemoveAllIntercep
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> ons.cdi.CachePutInterceptor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>  </interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20,
> 2018
> > >>>>>>> at 10:45
> > >>>>>>> > > AM,
> > >>>>>>> > > > >>>>>> Luís
> > >>>>>>> > > > >>>>>> > Alves
> > >>>>>>> > > > >>>>>> > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
> > >>>>>>> correctly if
> > >>>>>>> > > they
> > >>>>>>> > > > >>>>>> are on
> > >>>>>>> > > > >>>>>> > the
> > >>>>>>> > > > >>>>>> > > > > > >>> bean.xml
> > >>>>>>> > > > >>>>>> > > > > > >>> > they
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only
> annotated
> > >>>>>>> one don't
> > >>>>>>> > > > work.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure
> > >>>>>>> why I
> > >>>>>>> > didn't
> > >>>>>>> > > > had
> > >>>>>>> > > > >>>>>> it
> > >>>>>>> > > > >>>>>> > > before)
> > >>>>>>> > > > >>>>>> > > > > > >>> getting:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > org.apache.deltaspike.data.imp
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> l.
> RepositoryDefinitionException:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository
> creation
> > >>>>>>> for class
> > >>>>>>> > > > class
> > >>>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a
> > >>>>>>> valid
> > >>>>>>> > > Entity? I
> > >>>>>>> > > > >>>>>> got this
> > >>>>>>> > > > >>>>>> > > > base
> > >>>>>>> > > > >>>>>> > > > > > >>> class
> > >>>>>>> > > > >>>>>> > > > > > >>> > for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> some
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
> > >>>>>>> behavior:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract
> > class
> > >>>>>>> > > > >>>>>> CustomBaseRepository
> > >>>>>>> > > > >>>>>> > > <E
> > >>>>>>> > > > >>>>>> > > > > > >>> extends
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends
> > Serializable>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> > >>>>>>> > > > >>>>>> > AbstractEntityRepository<E,
> > >>>>>>> > > > >>>>>> > > K>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
> > >>>>>>> inheritance
> > >>>>>>> > is
> > >>>>>>> > > > >>>>>> supposed
> > >>>>>>> > > > >>>>>> > to
> > >>>>>>> > > > >>>>>> > > > work
> > >>>>>>> > > > >>>>>> > > > > > >>> with
> > >>>>>>> > > > >>>>>> > > > > > >>> > the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20,
> > 2018
> > >>>>>>> at 10:23
> > >>>>>>> > > AM,
> > >>>>>>> > > > >>>>>> Thomas
> > >>>>>>> > > > >>>>>> > > > > > Andraschko
> > >>>>>>> > > > >>>>>> > > > > > >>> <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> andraschko.thomas@gmail.com>
> > >>>>>>> > > > >>>>>> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > https://github.com/apache/delt
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > modules/partial-bean/impl/src/
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> e/test/core/api/partialbean/
> > >>>>>>> > > > uc008
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
> > >>>>>>> GMT+02:00
> > >>>>>>> > > > Thomas
> > >>>>>>> > > > >>>>>> > > Andraschko
> > >>>>>>> > > > >>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> andraschko.thomas@gmail.com
> > >>>>>>> > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors
> in
> > >>>>>>> generell
> > >>>>>>> > > > should
> > >>>>>>> > > > >>>>>> be
> > >>>>>>> > > > >>>>>> > > > supported
> > >>>>>>> > > > >>>>>> > > > > > but
> > >>>>>>> > > > >>>>>> > > > > > >>> only
> > >>>>>>> > > > >>>>>> > > > > > >>> > > via
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
> > >>>>>>> "@Interceptors,
> > >>>>>>> > > > >>>>>> @Intercepted
> > >>>>>>> > > > >>>>>> > and
> > >>>>>>> > > > >>>>>> > > > > > >>> @Decorator"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20
> 11:21
> > >>>>>>> GMT+02:00
> > >>>>>>> > > > Luís
> > >>>>>>> > > > >>>>>> Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I
> found
> > >>>>>>> that
> > >>>>>>> > > > >>>>>> @Repository is
> > >>>>>>> > > > >>>>>> > > > actually
> > >>>>>>> > > > >>>>>> > > > > a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found:
> > >>>>>>> "Currently CDI
> > >>>>>>> > > > >>>>>> Interceptors
> > >>>>>>> > > > >>>>>> > > applied
> > >>>>>>> > > > >>>>>> > > > > via
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and
> @Decorator
> > >>>>>>> are not
> > >>>>>>> > > > >>>>>> supported by
> > >>>>>>> > > > >>>>>> > our
> > >>>>>>> > > > >>>>>> > > > > > proxies!
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr
> 20,
> > >>>>>>> 2018 at
> > >>>>>>> > > 10:11
> > >>>>>>> > > > >>>>>> AM, Luís
> > >>>>>>> > > > >>>>>> > > > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> > >>>>>>> > > > @ApplicationScoped
> > >>>>>>> > > > >>>>>> the
> > >>>>>>> > > > >>>>>> > > > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> is
> > >>>>>>> > > > >>>>>> > > > > > >>> > not
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
> > >>>>>>> why...can't
> > >>>>>>> > > > >>>>>> @Repository
> > >>>>>>> > > > >>>>>> > > > methods
> > >>>>>>> > > > >>>>>> > > > > > be
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr
> > >>>>>>> 20, 2018 at
> > >>>>>>> > > > 9:53
> > >>>>>>> > > > >>>>>> AM,
> > >>>>>>> > > > >>>>>> > Luís
> > >>>>>>> > > > >>>>>> > > > > Alves
> > >>>>>>> > > > >>>>>> > > > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> luisalves00@gmail.com
> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
> > >>>>>>> > proxied...it
> > >>>>>>> > > > >>>>>> should be
> > >>>>>>> > > > >>>>>> > > > OK...I
> > >>>>>>> > > > >>>>>> > > > > > >>> guess
> > >>>>>>> > > > >>>>>> > > > > > >>> > it's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> like
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > repositories.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri,
> Apr
> > >>>>>>> 20, 2018
> > >>>>>>> > at
> > >>>>>>> > > > >>>>>> 9:44 AM,
> > >>>>>>> > > > >>>>>> > Luís
> > >>>>>>> > > > >>>>>> > > > > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> @Repository
> > >>>>>>> is
> > >>>>>>> > > @Dependent
> > >>>>>>> > > > >>>>>> > > scoped...and
> > >>>>>>> > > > >>>>>> > > > > > seems
> > >>>>>>> > > > >>>>>> > > > > > >>> > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> interceptors, so
> > >>>>>>> > > > >>>>>> > > > @CacheResult(cacheName
> > >>>>>>> > > > >>>>>> > > > > =
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working
> :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I
> remember
> > >>>>>>> that some
> > >>>>>>> > > one
> > >>>>>>> > > > >>>>>> proposed
> > >>>>>>> > > > >>>>>> > > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > @Repository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > @ApplicationScoped...if
> > >>>>>>> > > > I
> > >>>>>>> > > > >>>>>> change
> > >>>>>>> > > > >>>>>> > > them
> > >>>>>>> > > > >>>>>> > > > > do
> > >>>>>>> > > > >>>>>> > > > > > I
> > >>>>>>> > > > >>>>>> > > > > > >>> have
> > >>>>>>> > > > >>>>>> > > > > > >>> > > to
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > EntityManager
> > >>>>>>> > producer
> > >>>>>>> > > is
> > >>>>>>> > > > >>>>>> the
> > >>>>>>> > > > >>>>>> > > > following:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >  @Produces
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>>  @RequestScoped
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>  public
> > >>>>>>> > > EntityManager
> > >>>>>>> > > > >>>>>> get()
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>>  return
> > >>>>>>> > > > >>>>>> entityManager;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose
> > >>>>>>> I'll have a
> > >>>>>>> > > > >>>>>> different EM
> > >>>>>>> > > > >>>>>> > > for
> > >>>>>>> > > > >>>>>> > > > > > each
> > >>>>>>> > > > >>>>>> > > > > > >>> HTTP
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > onMessage() /
> > >>>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>
> > >>>>>>> > > > >
> > >>>>>>> > > >
> > >>>>>>> > >
> > >>>>>>> >
> > >>>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>
> > >>>>
> > >>>
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
I could port it to 1.8.x.

@mark/gerhard:
When do we plan a 1.8.x release?

2018-04-24 10:43 GMT+02:00 Luís Alves <lu...@gmail.com>:

> Thomas fixed https://issues.apache.org/jira/browse/DELTASPIKE-1339. I've
> tested with the trunk and now...
>
> @Repository
> @ApplicationScoped
> public abstract class LocationRepository extends
> AbstractEntityRepository<Location, Long>
> {
> ...
>     *@CacheResult(cacheName = "cache-name")*
>     public Location findLocationById(Long id)
>     {
>         return findBy(id);
>     }
>
> ....
>
> works as expected.
>
> Since this is related with JCACHE (JSR-107) I was wondering if you can do a
> maintenance release (1.8.2)? I'm not sure if other users do JCache in
> Repositories.
>
> best regards,
> LA
>
>
> On Mon, Apr 23, 2018 at 1:36 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > Should be fixed now by DELTASPIKE-1339.
> >
> > 2018-04-23 11:31 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> > > when:
> > >
> > > //Call the annotated method
> > >       result = this.proceed(invocation);
> > >
> > > org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext.
> > > getProceedOriginalReturnValue()  <-- the correct value is here, but is
> > > not used...
> > >
> > >
> > >
> > > On Mon, Apr 23, 2018 at 10:25 AM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > >
> > >> well...I think the null is cause by the invocation order...since the
> > >> cache is executed first I think it gets the return from the other
> > >> interceptor which is null....nevertheless this is also a weird
> behavior,
> > >> because I probably can't have the cache annotation mixed with other
> > >> annotation, such as logging or other stuff, because the result will
> not
> > be
> > >> the expected one.
> > >>
> > >>
> > >>
> > >> On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com>
> > >> wrote:
> > >>
> > >>> also with:
> > >>>
> > >>>  @CustomInterceptor
> > >>>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
> > >>>     public Location findLocationById(@CacheKey Integer locationId)
> > >>>
> > >>> my cache never get's populated....on org.jsr107.ri.annotations.Abst
> > >>> ractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we
> > >>> have this chunk of code:
> > >>>
> > >>> try {
> > >>>       //Call the annotated method
> > >>>       result = this.proceed(invocation); //this returns null even if
> > >>> find returns a location....so I also suspect that's something wrong
> > with
> > >>> the delegation...
> > >>>
> > >>>       //Cache non-null result
> > >>>       if (result != null) {
> > >>>         cache.put(cacheKey, result);
> > >>>       }
> > >>>
> > >>>       return result;
> > >>>     }
> > >>>
> > >>>
> > >>>
> > >>>
> > >>>
> > >>> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
> > >>> wrote:
> > >>>
> > >>>> something in the DelegateManualInvocationHandler vs
> > >>>> InterceptManualInvocationHandler....
> > >>>>
> > >>>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
> > >>>> wrote:
> > >>>>
> > >>>>> Stack without the @CustomInterceptor:
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> Stack with the  @CustomInterceptor:
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> Can't understand the different behavior :( seem like there's a
> > >>>>> previous lookup for @InterceptorBinding annotations...and since
> none
> > was
> > >>>>> found it has skipped the method...but the code tells
> otherwise...any
> > idea?
> > >>>>>
> > >>>>>
> > >>>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <luisalves00@gmail.com
> >
> > >>>>> wrote:
> > >>>>>
> > >>>>>> so far I think the *method*.getDeclaredAnnotations() when I don't
> > >>>>>> have the @CustomInterceptor is the findBy instead of the
> > >>>>>> findLocationById...but I can't understand why :(
> > >>>>>> that's why no annotation it's on the list, but makes no sense. I'm
> > >>>>>> going to try to figure out the behaviour with and without the
> > >>>>>> @CustomInterceptor.
> > >>>>>>
> > >>>>>>
> > >>>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
> > >>>>>> andraschko.thomas@gmail.com> wrote:
> > >>>>>>
> > >>>>>>> do you mean that method.getDeclaredAnnotations does not return
> > >>>>>>> CacheResult?
> > >>>>>>>
> > >>>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >>>>>>>
> > >>>>>>> > Good morning,
> > >>>>>>> >
> > >>>>>>> > there's still something weird. Only works when I got the
> > >>>>>>> @CustomInterceptor
> > >>>>>>> > there.
> > >>>>>>> >
> > >>>>>>> >     @CacheResult(cacheName = "loc-cache")
> > >>>>>>> >     @CustomInterceptor  //only seems to work when I have this
> > >>>>>>> annotation
> > >>>>>>> > here
> > >>>>>>> >     public Location findLocationById(@CacheKey Integer locId)
> > >>>>>>> >     {
> > >>>>>>> >         //just a wrapper for caching...
> > >>>>>>> >         return findBy(locId);
> > >>>>>>> >     }
> > >>>>>>> >
> > >>>>>>> > I'm trying to understand from the trace why the @CacheResult is
> > >>>>>>> not visible
> > >>>>>>> > alone...
> > >>>>>>> >
> > >>>>>>> >  addInterceptorBindings(beanManager, bindings,
> > >>>>>>> > method.getDeclaredAnnotations());  <--should see all the
> > >>>>>>> annotation...
> > >>>>>>> >
> > >>>>>>> >
> > >>>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
> > >>>>>>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> >
> > >>>>>>> > > Would be great if you could create a issue + unittest, so i
> can
> > >>>>>>> fix it
> > >>>>>>> > next
> > >>>>>>> > > week.
> > >>>>>>> > >
> > >>>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>>>>>> > >
> > >>>>>>> > > > I have to leave :( don't do any change until I can confirm
> > >>>>>>> everything
> > >>>>>>> > ;(
> > >>>>>>> > > >
> > >>>>>>> > > > have a nice weekend.
> > >>>>>>> > > >
> > >>>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > wrote:
> > >>>>>>> > > >
> > >>>>>>> > > > > well....I think we might have an issue with the proceed
> > part:
> > >>>>>>> > > > >
> > >>>>>>> > > > >  try {
> > >>>>>>> > > > >       //Call the annotated method
> > >>>>>>> > > > >       result = this.proceed(invocation); <-- this is not
> > >>>>>>> calling my
> > >>>>>>> > > > > method...I think is because the invocation is
> > >>>>>>> > > > org.apache.deltaspike.proxy.
> > >>>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead
> > of
> > >>>>>>> my
> > >>>>>>> > method
> > >>>>>>> > > :(
> > >>>>>>> > > > >
> > >>>>>>> > > > > any ideas?
> > >>>>>>> > > > >
> > >>>>>>> > > > >
> > >>>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > > wrote:
> > >>>>>>> > > > >
> > >>>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
> > >>>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> not sure the cache is actually working but I think it's
> > not
> > >>>>>>> related
> > >>>>>>> > > with
> > >>>>>>> > > > >> DS. If possible release a version with the fix:
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> @ApplicationScoped
> > >>>>>>> > > > >> @Specializes
> > >>>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup
> > extends
> > >>>>>>> > > > >> InterceptorLookup
> > >>>>>>> > > > >> {
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>     @Override
> > >>>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
> > >>>>>>> beanManager,
> > >>>>>>> > > > >> ArrayList<Annotation> bindings,
> > >>>>>>> > > > >>             Annotation[] declaredAnnotations)
> > >>>>>>> > > > >>     {
> > >>>>>>> > > > >>         for (Annotation annotation :
> declaredAnnotations)
> > >>>>>>> > > > >>         {
> > >>>>>>> > > > >>             if (bindings.contains(annotation))
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 continue;
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>             Class<? extends Annotation> annotationType =
> > >>>>>>> > > > >> annotation.annotationType();
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
> > >>>>>>> > annotationType))*
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 bindings.add(annotation);
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>             if (beanManager.isStereotype(
> annotationType))
> > >>>>>>> *///fun
> > >>>>>>> > > part
> > >>>>>>> > > > >> is that here is well done ;)*
> > >>>>>>> > > > >>             {
> > >>>>>>> > > > >>                 for (Annotation subAnnotation :
> > >>>>>>> > > > >> annotationType.getDeclaredAnnotations())
> > >>>>>>> > > > >>                 {
> > >>>>>>> > > > >>                     if (bindings.contains(
> subAnnotation))
> > >>>>>>> > > > >>                     {
> > >>>>>>> > > > >>                         continue;
> > >>>>>>> > > > >>                     }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>                     if (subAnnotation.annotationType(
> > >>>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
> > >>>>>>> > > > >>                     {
> > >>>>>>> > > > >>                         bindings.add(subAnnotation);
> > >>>>>>> > > > >>                     }
> > >>>>>>> > > > >>                 }
> > >>>>>>> > > > >>             }
> > >>>>>>> > > > >>         }
> > >>>>>>> > > > >>     }
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> Thanks very much Thomas :)
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>
> > >>>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com>
> > >>>>>>> > > > >> wrote:
> > >>>>>>> > > > >>
> > >>>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
> > >>>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
> > >>>>>>> luisalves00@gmail.com
> > >>>>>>> > >
> > >>>>>>> > > > >>> wrote:
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup?
> > >>>>>>> which jar I
> > >>>>>>> > > have
> > >>>>>>> > > > >>>> to import?!
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
> > >>>>>>> > luisalves00@gmail.com>
> > >>>>>>> > > > >>>> wrote:
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>>> I'll try....@Specializes on
> > >>>>>>> CustomDeltaSpikeProxyIntercept
> > >>>>>>> > orLookup
> > >>>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do
> the
> > >>>>>>> trick.
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> > >>>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
> > >>>>>>> /2.0/javax/enterprise/inject/s
> > >>>>>>> > > > >>>>>> pi/BeanManager.html#isIntercep
> > >>>>>>> torBinding-java.lang.Class-
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> Would be great if you can test it, create a issue
> and
> > >>>>>>> provide a
> > >>>>>>> > > > patch.
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any
> > CDI
> > >>>>>>> expert
> > >>>>>>> > on
> > >>>>>>> > > > the
> > >>>>>>> > > > >>>>>> mailing
> > >>>>>>> > > > >>>>>> > list that want to help? ;)
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
> > >>>>>>> /7/api/javax/enterprise/inject
> > >>>>>>> > > /spi/
> > >>>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
> > >>>>>>> terceptorBinding-javax.enterpr
> > >>>>>>> > > > >>>>>> ise.inject.spi
> > >>>>>>> > > > >>>>>> > .
> > >>>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible
> > to
> > >>>>>>> > > > >>>>>> (annotationType.
> > >>>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...
> we
> > >>>>>>> need some
> > >>>>>>> > > > >>>>>> runtime way
> > >>>>>>> > > > >>>>>> > to check it...
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > BTW if a solutions is found can you make it
> > available
> > >>>>>>> on
> > >>>>>>> > 1.8.2?
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas
> Andraschko <
> > >>>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding
> dynamically:
> > >>>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
> > >>>>>>> lob/master/cache-annotations-
> > >>>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
> > >>>>>>> c/main/java/org/jsr107/ri/
> > >>>>>>> > anno
> > >>>>>>> > > > >>>>>> tations/cdi/
> > >>>>>>> > > > >>>>>> > > InterceptorExtension.java
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > Just check our code here:
> > >>>>>>> > > > >>>>>> > > https://github.com/apache/
> deltaspike/blob/master/
> > >>>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
> > >>>>>>> rc/main/java/org/apache/
> > >>>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
> > >>>>>>> > DeltaSpikeProxyInterceptorLo
> > >>>>>>> > > ok
> > >>>>>>> > > > >>>>>> > up.java#L90
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation
> > is a
> > >>>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> binding
> > >>>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API).
> > >>>>>>> Then your
> > >>>>>>> > case
> > >>>>>>> > > > >>>>>> should
> > >>>>>>> > > > >>>>>> > work.
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
> > >>>>>>> > luisalves00@gmail.com
> > >>>>>>> > > >:
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > > This is the reference implementation of the
> > >>>>>>> interceptors:
> > >>>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
> > >>>>>>> > > > >>>>>> > > > They have:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/
> xml/ns/javaee
> > "
> > >>>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
> > >>>>>>> > 2001/XMLSchema-instance
> > >>>>>>> > > "
> > >>>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
> > >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/
> javaee/beans_1_0.xsd
> > ">
> > >>>>>>> > > > >>>>>> > > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>>> > > > >>>>>> > CachePutInterceptor</class>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > >>>>>>> > > ns.cdi.CacheRemoveEntryInterce
> > >>>>>>> > > > >>>>>> ptor</
> > >>>>>>> > > > >>>>>> > class>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > >>>>>>> > > ns.cdi.CacheRemoveAllIntercept
> > >>>>>>> > > > >>>>>> or</class>
> > >>>>>>> > > > >>>>>> > > >     </interceptors>
> > >>>>>>> > > > >>>>>> > > > </beans>
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > and they have 2files with:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> > >>>>>>> InterceptorExtension
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > and
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> > >>>>>>> CdiAnnotationProviderImpl
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas
> > >>>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors
> with
> > >>>>>>> CDI:
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
> > >>>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > We only support 1) currently.
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult
> > >>>>>>> will work
> > >>>>>>> > > even
> > >>>>>>> > > > a
> > >>>>>>> > > > >>>>>> normal
> > >>>>>>> > > > >>>>>> > > CDI
> > >>>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via
> > the
> > >>>>>>> > "normal"
> > >>>>>>> > > > CDI
> > >>>>>>> > > > >>>>>> way.
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> > >>>>>>> > > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> >:
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> > >>>>>>> > > > jsr107spec/issues/401
> > >>>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
> > >>>>>>> DS...:(
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís
> Alves
> > <
> > >>>>>>> > > > >>>>>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> > > > > wrote:
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/
> detail?id=107
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > Red Hat
> > >>>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert
> group
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
> > >>>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> > >>>>>>> > > > >>>>>> > > > > > >  */
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > >>>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
> > >>>>>>> > > > >>>>>> > > > > > > @Documented
> > >>>>>>> > > > >>>>>> > > > > > > @NormalScope
> > >>>>>>> > > > >>>>>> > > > > > > @Inherited
> > >>>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > }
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look
> for
> > >>>>>>> the
> > >>>>>>> > > > >>>>>> interceptors? Can
> > >>>>>>> > > > >>>>>> > > you
> > >>>>>>> > > > >>>>>> > > > > > point
> > >>>>>>> > > > >>>>>> > > > > > > me out the code?
> > >>>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all
> annotations
> > >>>>>>> even if
> > >>>>>>> > > they
> > >>>>>>> > > > >>>>>> don't
> > >>>>>>> > > > >>>>>> > have
> > >>>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for
> the
> > >>>>>>> registered
> > >>>>>>> > > > >>>>>> > interceptors?
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís
> > Alves
> > >>>>>>> <
> > >>>>>>> > > > >>>>>> > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > > > > > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/
> detail?id=107
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
> > >>>>>>> Andraschko
> > >>>>>>> > <
> > >>>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
> > >>>>>>> binding.
> > >>>>>>> > > > >>>>>> CacheResult is
> > >>>>>>> > > > >>>>>> > > > > actually
> > >>>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> > >>>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look
> > at
> > >>>>>>> the
> > >>>>>>> > cache
> > >>>>>>> > > > API
> > >>>>>>> > > > >>>>>> ;)
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
> > >>>>>>> available (
> > >>>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/
> jcache-cdi
> > ),
> > >>>>>>> i'm not
> > >>>>>>> > > > sure
> > >>>>>>> > > > >>>>>> if this
> > >>>>>>> > > > >>>>>> > > > would
> > >>>>>>> > > > >>>>>> > > > > > >>> work
> > >>>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
> > >>>>>>> interceptors to
> > >>>>>>> > > > partial
> > >>>>>>> > > > >>>>>> beans.
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is
> to
> > >>>>>>> create a
> > >>>>>>> > own
> > >>>>>>> > > > >>>>>> binding.
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves
> <
> > >>>>>>> > > > >>>>>> luisalves00@gmail.com>:
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> > >>>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
> > >>>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/
> > CacheResult.html
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that
> > >>>>>>> annotation we get
> > >>>>>>> > > the
> > >>>>>>> > > > >>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> > > > to
> > >>>>>>> > > > >>>>>> > > > > > >>> work?
> > >>>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
> > >>>>>>> myself....as I
> > >>>>>>> > > said
> > >>>>>>> > > > >>>>>> I cannot
> > >>>>>>> > > > >>>>>> > > > > modify
> > >>>>>>> > > > >>>>>> > > > > > >>> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM,
> > Thomas
> > >>>>>>> > > Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea
> how
> > >>>>>>> > internally
> > >>>>>>> > > > >>>>>> CacheResult
> > >>>>>>> > > > >>>>>> > > > works
> > >>>>>>> > > > >>>>>> > > > > > >>> but our
> > >>>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
> > >>>>>>> interceptors
> > >>>>>>> > by
> > >>>>>>> > > a
> > >>>>>>> > > > >>>>>> binding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
> > >>>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in
> the
> > >>>>>>> doc
> > >>>>>>> > > > >>>>>> (@Interceptors,
> > >>>>>>> > > > >>>>>> > > > > > @Intercepted,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
> > >>>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
> > >>>>>>> > > interceptorbinding.
> > >>>>>>> > > > >>>>>> Do you
> > >>>>>>> > > > >>>>>> > > mean
> > >>>>>>> > > > >>>>>> > > > > that
> > >>>>>>> > > > >>>>>> > > > > > >>> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > does
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > work without?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018
> schrieb
> > >>>>>>> Luís
> > >>>>>>> > Alves
> > >>>>>>> > > :
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to
> > remove
> > >>>>>>> > > > >>>>>> @InterceptorBinding?
> > >>>>>>> > > > >>>>>> > > and
> > >>>>>>> > > > >>>>>> > > > > > check
> > >>>>>>> > > > >>>>>> > > > > > >>> if
> > >>>>>>> > > > >>>>>> > > > > > >>> > it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> works?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.
> > CacheResult
> > >>>>>>> is
> > >>>>>>> > > > standard
> > >>>>>>> > > > >>>>>> so I
> > >>>>>>> > > > >>>>>> > > don't
> > >>>>>>> > > > >>>>>> > > > > want
> > >>>>>>> > > > >>>>>> > > > > > >>> to
> > >>>>>>> > > > >>>>>> > > > > > >>> > > extend
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
> > >>>>>>> @InterceptorBinding.....if
> > >>>>>>> > > this
> > >>>>>>> > > > >>>>>> is really
> > >>>>>>> > > > >>>>>> > > the
> > >>>>>>> > > > >>>>>> > > > > > >>> problem.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11
> PM,
> > >>>>>>> Luís
> > >>>>>>> > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface
> > >>>>>>> CustomInterceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
> > >>>>>>> > > @InterceptorBinding....but
> > >>>>>>> > > > >>>>>> not 100%
> > >>>>>>> > > > >>>>>> > > > > > >>> sure....what
> > >>>>>>> > > > >>>>>> > > > > > >>> > is
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06
> > PM,
> > >>>>>>> Luís
> > >>>>>>> > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite
> your
> > >>>>>>> tests
> > >>>>>>> > with
> > >>>>>>> > > > the
> > >>>>>>> > > > >>>>>> > > > @CacheResult
> > >>>>>>> > > > >>>>>> > > > > > >>> > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at
> 12:57
> > >>>>>>> PM, Thomas
> > >>>>>>> > > > >>>>>> Andraschko <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com
> >
> > >>>>>>> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
> > >>>>>>> interceptor is
> > >>>>>>> > > really
> > >>>>>>> > > > >>>>>> called
> > >>>>>>> > > > >>>>>> > ;)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00
> > >>>>>>> Luís Alves <
> > >>>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the
> > @CustomInterceptor
> > >>>>>>> > > declaration
> > >>>>>>> > > > >>>>>> of the
> > >>>>>>> > > > >>>>>> > > > > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
> > >>>>>>> > called....SO
> > >>>>>>> > > it
> > >>>>>>> > > > >>>>>> should
> > >>>>>>> > > > >>>>>> > > work
> > >>>>>>> > > > >>>>>> > > > > for
> > >>>>>>> > > > >>>>>> > > > > > >>> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > cache
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> as
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at
> > >>>>>>> 12:43 PM,
> > >>>>>>> > Luís
> > >>>>>>> > > > >>>>>> Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a
> custom
> > >>>>>>> one (in
> > >>>>>>> > fact
> > >>>>>>> > > > is
> > >>>>>>> > > > >>>>>> a
> > >>>>>>> > > > >>>>>> > "copy"
> > >>>>>>> > > > >>>>>> > > of
> > >>>>>>> > > > >>>>>> > > > > > yours
> > >>>>>>> > > > >>>>>> > > > > > >>> > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> logs
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
> > >>>>>>> CustomInterceptorImpl
> > >>>>>>> > > > >>>>>> implements
> > >>>>>>> > > > >>>>>> > > > > > Serializable
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static
> final
> > >>>>>>> long
> > >>>>>>> > > > >>>>>> serialVersionUID =
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger
> > logger;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> > >>>>>>> > > > >>>>>> interceptIt(InvocationContext
> > >>>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info
> ("yay
> > >>>>>>> :)
> > >>>>>>> > > > >>>>>> > CustomInterceptorImpl
> > >>>>>>> > > > >>>>>> > > > was
> > >>>>>>> > > > >>>>>> > > > > > >>> > called");
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
> > >>>>>>> > > > >>>>>> invocationContext.proceed();
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the
> > >>>>>>> beans.xml (for
> > >>>>>>> > > > service
> > >>>>>>> > > > >>>>>> and
> > >>>>>>> > > > >>>>>> > repo
> > >>>>>>> > > > >>>>>> > > > > > layers):
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> > >>>>>>> > > encoding="UTF-8"?>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> > >>>>>>> > > http://java.sun.com/xml
> > >>>>>>> > > > >>>>>> /ns/javaee
> > >>>>>>> > > > >>>>>> > "
> > >>>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> http://www.w3.org/2001/XMLSche
> > >>>>>>> > > > >>>>>> ma-instance"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>>  xsi:schemaLocation="http://
> > >>>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> http://java.sun.com/xml/ns/jav
> > >>>>>>> > > > >>>>>> aee/beans_1_0.xsd
> > >>>>>>> > > > >>>>>> > ">
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> >  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> ons.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>>  <class>eu.gls.ddtm.config.
> > >>>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the
> > service
> > >>>>>>> layer
> > >>>>>>> > but
> > >>>>>>> > > > not
> > >>>>>>> > > > >>>>>> on the
> > >>>>>>> > > > >>>>>> > > > > > >>> @Repository :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10
> > >>>>>>> (CDI
> > >>>>>>> > 1.x)...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
> > >>>>>>> 11:50 AM,
> > >>>>>>> > > > Thomas
> > >>>>>>> > > > >>>>>> > > Andraschko
> > >>>>>>> > > > >>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> andraschko.thomas@gmail.com>
> > >>>>>>> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a
> > custom
> > >>>>>>> > > interceptor
> > >>>>>>> > > > >>>>>> and check
> > >>>>>>> > > > >>>>>> > > if
> > >>>>>>> > > > >>>>>> > > > > it's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > invoked?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> > >>>>>>> > > > weld-2.0.0.Final
> > >>>>>>> > > > >>>>>> or
> > >>>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> have a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in
> > the
> > >>>>>>> unit
> > >>>>>>> > test
> > >>>>>>> > > as
> > >>>>>>> > > > >>>>>> there is
> > >>>>>>> > > > >>>>>> > > > > > something
> > >>>>>>> > > > >>>>>> > > > > > >>> > > broken,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link
> i
> > >>>>>>> posted
> > >>>>>>> > > before.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
> > >>>>>>> great if
> > >>>>>>> > you
> > >>>>>>> > > > >>>>>> could
> > >>>>>>> > > > >>>>>> > > provide a
> > >>>>>>> > > > >>>>>> > > > > > >>> unittest
> > >>>>>>> > > > >>>>>> > > > > > >>> > > for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
> > >>>>>>> prepare it by
> > >>>>>>> > > > >>>>>> myself.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40
> > >>>>>>> GMT+02:00 Luís
> > >>>>>>> > > Alves
> > >>>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
> > >>>>>>> success...@CacheResult
> > >>>>>>> > > on
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract
> class
> > >>>>>>> > > SomeRepository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work
> > :S
> > >>>>>>> not sure
> > >>>>>>> > > > what
> > >>>>>>> > > > >>>>>> I'm
> > >>>>>>> > > > >>>>>> > doing
> > >>>>>>> > > > >>>>>> > > > > > wrong.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018
> > at
> > >>>>>>> 11:03
> > >>>>>>> > AM,
> > >>>>>>> > > > >>>>>> Luís Alves
> > >>>>>>> > > > >>>>>> > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> > >>>>>>> > > CustomBaseRepository
> > >>>>>>> > > > >>>>>> for
> > >>>>>>> > > > >>>>>> > > > now...but
> > >>>>>>> > > > >>>>>> > > > > > >>> still
> > >>>>>>> > > > >>>>>> > > > > > >>> > > can't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
> > >>>>>>> work...here is
> > >>>>>>> > my
> > >>>>>>> > > > >>>>>> beans.xml:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml
> version="1.0"
> > >>>>>>> > > > >>>>>> encoding="UTF-8"?>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> > >>>>>>> > > > http://java.sun.com/
> > >>>>>>> > > > >>>>>> > > > xml/ns/javaee"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > http://www.w3.org/2001/XMLSche
> > >>>>>>> > > > >>>>>> ma-instance"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> >  xsi:schemaLocation="http://
> > >>>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> http://java.sun.com/xml/ns/
> > >>>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
> > >>>>>>> > > > >>>>>> > > > > ">
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>>  <class>org.jsr107.ri.
> > >>>>>>> > > > >>>>>> > > annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> CacheResultInterceptor</class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>>  <class>org.jsr107.ri.
> > >>>>>>> > > > >>>>>> > > annotations.cdi.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> CacheRemoveEntryInterceptor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > ons.cdi.CacheRemoveAllIntercep
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> ons.cdi.CachePutInterceptor</
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>  </interceptors>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20,
> 2018
> > >>>>>>> at 10:45
> > >>>>>>> > > AM,
> > >>>>>>> > > > >>>>>> Luís
> > >>>>>>> > > > >>>>>> > Alves
> > >>>>>>> > > > >>>>>> > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
> > >>>>>>> correctly if
> > >>>>>>> > > they
> > >>>>>>> > > > >>>>>> are on
> > >>>>>>> > > > >>>>>> > the
> > >>>>>>> > > > >>>>>> > > > > > >>> bean.xml
> > >>>>>>> > > > >>>>>> > > > > > >>> > they
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only
> annotated
> > >>>>>>> one don't
> > >>>>>>> > > > work.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure
> > >>>>>>> why I
> > >>>>>>> > didn't
> > >>>>>>> > > > had
> > >>>>>>> > > > >>>>>> it
> > >>>>>>> > > > >>>>>> > > before)
> > >>>>>>> > > > >>>>>> > > > > > >>> getting:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > org.apache.deltaspike.data.imp
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> l.
> RepositoryDefinitionException:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository
> creation
> > >>>>>>> for class
> > >>>>>>> > > > class
> > >>>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a
> > >>>>>>> valid
> > >>>>>>> > > Entity? I
> > >>>>>>> > > > >>>>>> got this
> > >>>>>>> > > > >>>>>> > > > base
> > >>>>>>> > > > >>>>>> > > > > > >>> class
> > >>>>>>> > > > >>>>>> > > > > > >>> > for
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> some
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
> > >>>>>>> behavior:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract
> > class
> > >>>>>>> > > > >>>>>> CustomBaseRepository
> > >>>>>>> > > > >>>>>> > > <E
> > >>>>>>> > > > >>>>>> > > > > > >>> extends
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends
> > Serializable>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> > >>>>>>> > > > >>>>>> > AbstractEntityRepository<E,
> > >>>>>>> > > > >>>>>> > > K>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
> > >>>>>>> inheritance
> > >>>>>>> > is
> > >>>>>>> > > > >>>>>> supposed
> > >>>>>>> > > > >>>>>> > to
> > >>>>>>> > > > >>>>>> > > > work
> > >>>>>>> > > > >>>>>> > > > > > >>> with
> > >>>>>>> > > > >>>>>> > > > > > >>> > the
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20,
> > 2018
> > >>>>>>> at 10:23
> > >>>>>>> > > AM,
> > >>>>>>> > > > >>>>>> Thomas
> > >>>>>>> > > > >>>>>> > > > > > Andraschko
> > >>>>>>> > > > >>>>>> > > > > > >>> <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> andraschko.thomas@gmail.com>
> > >>>>>>> > > > >>>>>> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > https://github.com/apache/delt
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > modules/partial-bean/impl/src/
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> e/test/core/api/partialbean/
> > >>>>>>> > > > uc008
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
> > >>>>>>> GMT+02:00
> > >>>>>>> > > > Thomas
> > >>>>>>> > > > >>>>>> > > Andraschko
> > >>>>>>> > > > >>>>>> > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> andraschko.thomas@gmail.com
> > >>>>>>> > >:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors
> in
> > >>>>>>> generell
> > >>>>>>> > > > should
> > >>>>>>> > > > >>>>>> be
> > >>>>>>> > > > >>>>>> > > > supported
> > >>>>>>> > > > >>>>>> > > > > > but
> > >>>>>>> > > > >>>>>> > > > > > >>> only
> > >>>>>>> > > > >>>>>> > > > > > >>> > > via
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
> > >>>>>>> "@Interceptors,
> > >>>>>>> > > > >>>>>> @Intercepted
> > >>>>>>> > > > >>>>>> > and
> > >>>>>>> > > > >>>>>> > > > > > >>> @Decorator"
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20
> 11:21
> > >>>>>>> GMT+02:00
> > >>>>>>> > > > Luís
> > >>>>>>> > > > >>>>>> Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I
> found
> > >>>>>>> that
> > >>>>>>> > > > >>>>>> @Repository is
> > >>>>>>> > > > >>>>>> > > > actually
> > >>>>>>> > > > >>>>>> > > > > a
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found:
> > >>>>>>> "Currently CDI
> > >>>>>>> > > > >>>>>> Interceptors
> > >>>>>>> > > > >>>>>> > > applied
> > >>>>>>> > > > >>>>>> > > > > via
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and
> @Decorator
> > >>>>>>> are not
> > >>>>>>> > > > >>>>>> supported by
> > >>>>>>> > > > >>>>>> > our
> > >>>>>>> > > > >>>>>> > > > > > proxies!
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr
> 20,
> > >>>>>>> 2018 at
> > >>>>>>> > > 10:11
> > >>>>>>> > > > >>>>>> AM, Luís
> > >>>>>>> > > > >>>>>> > > > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> > >>>>>>> > > > @ApplicationScoped
> > >>>>>>> > > > >>>>>> the
> > >>>>>>> > > > >>>>>> > > > > interceptor
> > >>>>>>> > > > >>>>>> > > > > > >>> is
> > >>>>>>> > > > >>>>>> > > > > > >>> > not
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
> > >>>>>>> why...can't
> > >>>>>>> > > > >>>>>> @Repository
> > >>>>>>> > > > >>>>>> > > > methods
> > >>>>>>> > > > >>>>>> > > > > > be
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr
> > >>>>>>> 20, 2018 at
> > >>>>>>> > > > 9:53
> > >>>>>>> > > > >>>>>> AM,
> > >>>>>>> > > > >>>>>> > Luís
> > >>>>>>> > > > >>>>>> > > > > Alves
> > >>>>>>> > > > >>>>>> > > > > > <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> luisalves00@gmail.com
> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
> > >>>>>>> > proxied...it
> > >>>>>>> > > > >>>>>> should be
> > >>>>>>> > > > >>>>>> > > > OK...I
> > >>>>>>> > > > >>>>>> > > > > > >>> guess
> > >>>>>>> > > > >>>>>> > > > > > >>> > it's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> like
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > repositories.
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri,
> Apr
> > >>>>>>> 20, 2018
> > >>>>>>> > at
> > >>>>>>> > > > >>>>>> 9:44 AM,
> > >>>>>>> > > > >>>>>> > Luís
> > >>>>>>> > > > >>>>>> > > > > > Alves <
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> luisalves00@gmail.com
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> @Repository
> > >>>>>>> is
> > >>>>>>> > > @Dependent
> > >>>>>>> > > > >>>>>> > > scoped...and
> > >>>>>>> > > > >>>>>> > > > > > seems
> > >>>>>>> > > > >>>>>> > > > > > >>> > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> interceptors, so
> > >>>>>>> > > > >>>>>> > > > @CacheResult(cacheName
> > >>>>>>> > > > >>>>>> > > > > =
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working
> :(
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I
> remember
> > >>>>>>> that some
> > >>>>>>> > > one
> > >>>>>>> > > > >>>>>> proposed
> > >>>>>>> > > > >>>>>> > > that
> > >>>>>>> > > > >>>>>> > > > > > >>> > @Repository
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > @ApplicationScoped...if
> > >>>>>>> > > > I
> > >>>>>>> > > > >>>>>> change
> > >>>>>>> > > > >>>>>> > > them
> > >>>>>>> > > > >>>>>> > > > > do
> > >>>>>>> > > > >>>>>> > > > > > I
> > >>>>>>> > > > >>>>>> > > > > > >>> have
> > >>>>>>> > > > >>>>>> > > > > > >>> > > to
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > EntityManager
> > >>>>>>> > producer
> > >>>>>>> > > is
> > >>>>>>> > > > >>>>>> the
> > >>>>>>> > > > >>>>>> > > > following:
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >  @Produces
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>>  @RequestScoped
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>  public
> > >>>>>>> > > EntityManager
> > >>>>>>> > > > >>>>>> get()
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>>  return
> > >>>>>>> > > > >>>>>> entityManager;
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose
> > >>>>>>> I'll have a
> > >>>>>>> > > > >>>>>> different EM
> > >>>>>>> > > > >>>>>> > > for
> > >>>>>>> > > > >>>>>> > > > > > each
> > >>>>>>> > > > >>>>>> > > > > > >>> HTTP
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > onMessage() /
> > >>>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>> > > >
> > >>>>>>> > > > >>>>>> > > > > > >>> > >
> > >>>>>>> > > > >>>>>> > > > > > >>> >
> > >>>>>>> > > > >>>>>> > > > > > >>>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >>
> > >>>>>>> > > > >>>>>> > > > > > >
> > >>>>>>> > > > >>>>>> > > > > >
> > >>>>>>> > > > >>>>>> > > > >
> > >>>>>>> > > > >>>>>> > > >
> > >>>>>>> > > > >>>>>> > >
> > >>>>>>> > > > >>>>>> >
> > >>>>>>> > > > >>>>>>
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>>
> > >>>>>>> > > > >>>>
> > >>>>>>> > > > >>>
> > >>>>>>> > > > >>
> > >>>>>>> > > > >
> > >>>>>>> > > >
> > >>>>>>> > >
> > >>>>>>> >
> > >>>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>
> > >>>>
> > >>>
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Thomas fixed https://issues.apache.org/jira/browse/DELTASPIKE-1339. I've
tested with the trunk and now...

@Repository
@ApplicationScoped
public abstract class LocationRepository extends
AbstractEntityRepository<Location, Long>
{
...
    *@CacheResult(cacheName = "cache-name")*
    public Location findLocationById(Long id)
    {
        return findBy(id);
    }

....

works as expected.

Since this is related with JCACHE (JSR-107) I was wondering if you can do a
maintenance release (1.8.2)? I'm not sure if other users do JCache in
Repositories.

best regards,
LA


On Mon, Apr 23, 2018 at 1:36 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> Should be fixed now by DELTASPIKE-1339.
>
> 2018-04-23 11:31 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > when:
> >
> > //Call the annotated method
> >       result = this.proceed(invocation);
> >
> > org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext.
> > getProceedOriginalReturnValue()  <-- the correct value is here, but is
> > not used...
> >
> >
> >
> > On Mon, Apr 23, 2018 at 10:25 AM, Luís Alves <lu...@gmail.com>
> > wrote:
> >
> >> well...I think the null is cause by the invocation order...since the
> >> cache is executed first I think it gets the return from the other
> >> interceptor which is null....nevertheless this is also a weird behavior,
> >> because I probably can't have the cache annotation mixed with other
> >> annotation, such as logging or other stuff, because the result will not
> be
> >> the expected one.
> >>
> >>
> >>
> >> On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >>
> >>> also with:
> >>>
> >>>  @CustomInterceptor
> >>>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
> >>>     public Location findLocationById(@CacheKey Integer locationId)
> >>>
> >>> my cache never get's populated....on org.jsr107.ri.annotations.Abst
> >>> ractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we
> >>> have this chunk of code:
> >>>
> >>> try {
> >>>       //Call the annotated method
> >>>       result = this.proceed(invocation); //this returns null even if
> >>> find returns a location....so I also suspect that's something wrong
> with
> >>> the delegation...
> >>>
> >>>       //Cache non-null result
> >>>       if (result != null) {
> >>>         cache.put(cacheKey, result);
> >>>       }
> >>>
> >>>       return result;
> >>>     }
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
> >>> wrote:
> >>>
> >>>> something in the DelegateManualInvocationHandler vs
> >>>> InterceptManualInvocationHandler....
> >>>>
> >>>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
> >>>> wrote:
> >>>>
> >>>>> Stack without the @CustomInterceptor:
> >>>>>
> >>>>>
> >>>>>
> >>>>> Stack with the  @CustomInterceptor:
> >>>>>
> >>>>>
> >>>>>
> >>>>> Can't understand the different behavior :( seem like there's a
> >>>>> previous lookup for @InterceptorBinding annotations...and since none
> was
> >>>>> found it has skipped the method...but the code tells otherwise...any
> idea?
> >>>>>
> >>>>>
> >>>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com>
> >>>>> wrote:
> >>>>>
> >>>>>> so far I think the *method*.getDeclaredAnnotations() when I don't
> >>>>>> have the @CustomInterceptor is the findBy instead of the
> >>>>>> findLocationById...but I can't understand why :(
> >>>>>> that's why no annotation it's on the list, but makes no sense. I'm
> >>>>>> going to try to figure out the behaviour with and without the
> >>>>>> @CustomInterceptor.
> >>>>>>
> >>>>>>
> >>>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
> >>>>>> andraschko.thomas@gmail.com> wrote:
> >>>>>>
> >>>>>>> do you mean that method.getDeclaredAnnotations does not return
> >>>>>>> CacheResult?
> >>>>>>>
> >>>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>>>>>>
> >>>>>>> > Good morning,
> >>>>>>> >
> >>>>>>> > there's still something weird. Only works when I got the
> >>>>>>> @CustomInterceptor
> >>>>>>> > there.
> >>>>>>> >
> >>>>>>> >     @CacheResult(cacheName = "loc-cache")
> >>>>>>> >     @CustomInterceptor  //only seems to work when I have this
> >>>>>>> annotation
> >>>>>>> > here
> >>>>>>> >     public Location findLocationById(@CacheKey Integer locId)
> >>>>>>> >     {
> >>>>>>> >         //just a wrapper for caching...
> >>>>>>> >         return findBy(locId);
> >>>>>>> >     }
> >>>>>>> >
> >>>>>>> > I'm trying to understand from the trace why the @CacheResult is
> >>>>>>> not visible
> >>>>>>> > alone...
> >>>>>>> >
> >>>>>>> >  addInterceptorBindings(beanManager, bindings,
> >>>>>>> > method.getDeclaredAnnotations());  <--should see all the
> >>>>>>> annotation...
> >>>>>>> >
> >>>>>>> >
> >>>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
> >>>>>>> > andraschko.thomas@gmail.com> wrote:
> >>>>>>> >
> >>>>>>> > > Would be great if you could create a issue + unittest, so i can
> >>>>>>> fix it
> >>>>>>> > next
> >>>>>>> > > week.
> >>>>>>> > >
> >>>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> >>>>>>> > >
> >>>>>>> > > > I have to leave :( don't do any change until I can confirm
> >>>>>>> everything
> >>>>>>> > ;(
> >>>>>>> > > >
> >>>>>>> > > > have a nice weekend.
> >>>>>>> > > >
> >>>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
> >>>>>>> luisalves00@gmail.com>
> >>>>>>> > > wrote:
> >>>>>>> > > >
> >>>>>>> > > > > well....I think we might have an issue with the proceed
> part:
> >>>>>>> > > > >
> >>>>>>> > > > >  try {
> >>>>>>> > > > >       //Call the annotated method
> >>>>>>> > > > >       result = this.proceed(invocation); <-- this is not
> >>>>>>> calling my
> >>>>>>> > > > > method...I think is because the invocation is
> >>>>>>> > > > org.apache.deltaspike.proxy.
> >>>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead
> of
> >>>>>>> my
> >>>>>>> > method
> >>>>>>> > > :(
> >>>>>>> > > > >
> >>>>>>> > > > > any ideas?
> >>>>>>> > > > >
> >>>>>>> > > > >
> >>>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
> >>>>>>> luisalves00@gmail.com>
> >>>>>>> > > > wrote:
> >>>>>>> > > > >
> >>>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
> >>>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
> >>>>>>> > > > >>
> >>>>>>> > > > >> not sure the cache is actually working but I think it's
> not
> >>>>>>> related
> >>>>>>> > > with
> >>>>>>> > > > >> DS. If possible release a version with the fix:
> >>>>>>> > > > >>
> >>>>>>> > > > >> @ApplicationScoped
> >>>>>>> > > > >> @Specializes
> >>>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup
> extends
> >>>>>>> > > > >> InterceptorLookup
> >>>>>>> > > > >> {
> >>>>>>> > > > >>
> >>>>>>> > > > >>     @Override
> >>>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
> >>>>>>> beanManager,
> >>>>>>> > > > >> ArrayList<Annotation> bindings,
> >>>>>>> > > > >>             Annotation[] declaredAnnotations)
> >>>>>>> > > > >>     {
> >>>>>>> > > > >>         for (Annotation annotation : declaredAnnotations)
> >>>>>>> > > > >>         {
> >>>>>>> > > > >>             if (bindings.contains(annotation))
> >>>>>>> > > > >>             {
> >>>>>>> > > > >>                 continue;
> >>>>>>> > > > >>             }
> >>>>>>> > > > >>
> >>>>>>> > > > >>             Class<? extends Annotation> annotationType =
> >>>>>>> > > > >> annotation.annotationType();
> >>>>>>> > > > >>
> >>>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
> >>>>>>> > annotationType))*
> >>>>>>> > > > >>             {
> >>>>>>> > > > >>                 bindings.add(annotation);
> >>>>>>> > > > >>             }
> >>>>>>> > > > >>
> >>>>>>> > > > >>             if (beanManager.isStereotype(annotationType))
> >>>>>>> *///fun
> >>>>>>> > > part
> >>>>>>> > > > >> is that here is well done ;)*
> >>>>>>> > > > >>             {
> >>>>>>> > > > >>                 for (Annotation subAnnotation :
> >>>>>>> > > > >> annotationType.getDeclaredAnnotations())
> >>>>>>> > > > >>                 {
> >>>>>>> > > > >>                     if (bindings.contains(subAnnotation))
> >>>>>>> > > > >>                     {
> >>>>>>> > > > >>                         continue;
> >>>>>>> > > > >>                     }
> >>>>>>> > > > >>
> >>>>>>> > > > >>                     if (subAnnotation.annotationType(
> >>>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
> >>>>>>> > > > >>                     {
> >>>>>>> > > > >>                         bindings.add(subAnnotation);
> >>>>>>> > > > >>                     }
> >>>>>>> > > > >>                 }
> >>>>>>> > > > >>             }
> >>>>>>> > > > >>         }
> >>>>>>> > > > >>     }
> >>>>>>> > > > >>
> >>>>>>> > > > >> Thanks very much Thomas :)
> >>>>>>> > > > >>
> >>>>>>> > > > >>
> >>>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
> >>>>>>> luisalves00@gmail.com>
> >>>>>>> > > > >> wrote:
> >>>>>>> > > > >>
> >>>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
> >>>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
> >>>>>>> > > > >>>
> >>>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
> >>>>>>> luisalves00@gmail.com
> >>>>>>> > >
> >>>>>>> > > > >>> wrote:
> >>>>>>> > > > >>>
> >>>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup?
> >>>>>>> which jar I
> >>>>>>> > > have
> >>>>>>> > > > >>>> to import?!
> >>>>>>> > > > >>>>
> >>>>>>> > > > >>>>
> >>>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
> >>>>>>> > luisalves00@gmail.com>
> >>>>>>> > > > >>>> wrote:
> >>>>>>> > > > >>>>
> >>>>>>> > > > >>>>> I'll try....@Specializes on
> >>>>>>> CustomDeltaSpikeProxyIntercept
> >>>>>>> > orLookup
> >>>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
> >>>>>>> trick.
> >>>>>>> > > > >>>>>
> >>>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> >>>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
> >>>>>>> > > > >>>>>
> >>>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
> >>>>>>> /2.0/javax/enterprise/inject/s
> >>>>>>> > > > >>>>>> pi/BeanManager.html#isIntercep
> >>>>>>> torBinding-java.lang.Class-
> >>>>>>> > > > >>>>>>
> >>>>>>> > > > >>>>>> Would be great if you can test it, create a issue and
> >>>>>>> provide a
> >>>>>>> > > > patch.
> >>>>>>> > > > >>>>>>
> >>>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> >>>>>>> > > > >>>>>>
> >>>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any
> CDI
> >>>>>>> expert
> >>>>>>> > on
> >>>>>>> > > > the
> >>>>>>> > > > >>>>>> mailing
> >>>>>>> > > > >>>>>> > list that want to help? ;)
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
> >>>>>>> /7/api/javax/enterprise/inject
> >>>>>>> > > /spi/
> >>>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
> >>>>>>> terceptorBinding-javax.enterpr
> >>>>>>> > > > >>>>>> ise.inject.spi
> >>>>>>> > > > >>>>>> > .
> >>>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible
> to
> >>>>>>> > > > >>>>>> (annotationType.
> >>>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we
> >>>>>>> need some
> >>>>>>> > > > >>>>>> runtime way
> >>>>>>> > > > >>>>>> > to check it...
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> > BTW if a solutions is found can you make it
> available
> >>>>>>> on
> >>>>>>> > 1.8.2?
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> >>>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
> >>>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
> >>>>>>> lob/master/cache-annotations-
> >>>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
> >>>>>>> c/main/java/org/jsr107/ri/
> >>>>>>> > anno
> >>>>>>> > > > >>>>>> tations/cdi/
> >>>>>>> > > > >>>>>> > > InterceptorExtension.java
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> > > Just check our code here:
> >>>>>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
> >>>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
> >>>>>>> rc/main/java/org/apache/
> >>>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
> >>>>>>> > DeltaSpikeProxyInterceptorLo
> >>>>>>> > > ok
> >>>>>>> > > > >>>>>> > up.java#L90
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation
> is a
> >>>>>>> > > interceptor
> >>>>>>> > > > >>>>>> binding
> >>>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API).
> >>>>>>> Then your
> >>>>>>> > case
> >>>>>>> > > > >>>>>> should
> >>>>>>> > > > >>>>>> > work.
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
> >>>>>>> > luisalves00@gmail.com
> >>>>>>> > > >:
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> > > > This is the reference implementation of the
> >>>>>>> interceptors:
> >>>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
> >>>>>>> > > > >>>>>> > > > They have:
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee
> "
> >>>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
> >>>>>>> > 2001/XMLSchema-instance
> >>>>>>> > > "
> >>>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
> >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> >>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
> ">
> >>>>>>> > > > >>>>>> > > >     <interceptors>
> >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> >>>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
> >>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> >>>>>>> > > > >>>>>> > CachePutInterceptor</class>
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> >>>>>>> > > ns.cdi.CacheRemoveEntryInterce
> >>>>>>> > > > >>>>>> ptor</
> >>>>>>> > > > >>>>>> > class>
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> >>>>>>> > > ns.cdi.CacheRemoveAllIntercept
> >>>>>>> > > > >>>>>> or</class>
> >>>>>>> > > > >>>>>> > > >     </interceptors>
> >>>>>>> > > > >>>>>> > > > </beans>
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > and they have 2files with:
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> >>>>>>> InterceptorExtension
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > and
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
> >>>>>>> CdiAnnotationProviderImpl
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas
> >>>>>>> Andraschko <
> >>>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with
> >>>>>>> CDI:
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
> >>>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > > We only support 1) currently.
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult
> >>>>>>> will work
> >>>>>>> > > even
> >>>>>>> > > > a
> >>>>>>> > > > >>>>>> normal
> >>>>>>> > > > >>>>>> > > CDI
> >>>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via
> the
> >>>>>>> > "normal"
> >>>>>>> > > > CDI
> >>>>>>> > > > >>>>>> way.
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> >>>>>>> > > > luisalves00@gmail.com
> >>>>>>> > > > >>>>>> >:
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> >>>>>>> > > > jsr107spec/issues/401
> >>>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
> >>>>>>> DS...:(
> >>>>>>> > > > >>>>>> > > > > >
> >>>>>>> > > > >>>>>> > > > > >
> >>>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves
> <
> >>>>>>> > > > >>>>>> luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> > > > > wrote:
> >>>>>>> > > > >>>>>> > > > > >
> >>>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > Red Hat
> >>>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
> >>>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
> >>>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> >>>>>>> > > > >>>>>> > > > > > >  */
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> >>>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
> >>>>>>> > > > >>>>>> > > > > > > @Documented
> >>>>>>> > > > >>>>>> > > > > > > @NormalScope
> >>>>>>> > > > >>>>>> > > > > > > @Inherited
> >>>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > }
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for
> >>>>>>> the
> >>>>>>> > > > >>>>>> interceptors? Can
> >>>>>>> > > > >>>>>> > > you
> >>>>>>> > > > >>>>>> > > > > > point
> >>>>>>> > > > >>>>>> > > > > > > me out the code?
> >>>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations
> >>>>>>> even if
> >>>>>>> > > they
> >>>>>>> > > > >>>>>> don't
> >>>>>>> > > > >>>>>> > have
> >>>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
> >>>>>>> registered
> >>>>>>> > > > >>>>>> > interceptors?
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís
> Alves
> >>>>>>> <
> >>>>>>> > > > >>>>>> > luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > > > > > wrote:
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
> >>>>>>> Andraschko
> >>>>>>> > <
> >>>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
> >>>>>>> binding.
> >>>>>>> > > > >>>>>> CacheResult is
> >>>>>>> > > > >>>>>> > > > > actually
> >>>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> >>>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look
> at
> >>>>>>> the
> >>>>>>> > cache
> >>>>>>> > > > API
> >>>>>>> > > > >>>>>> ;)
> >>>>>>> > > > >>>>>> > > > > > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
> >>>>>>> available (
> >>>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi
> ),
> >>>>>>> i'm not
> >>>>>>> > > > sure
> >>>>>>> > > > >>>>>> if this
> >>>>>>> > > > >>>>>> > > > would
> >>>>>>> > > > >>>>>> > > > > > >>> work
> >>>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
> >>>>>>> interceptors to
> >>>>>>> > > > partial
> >>>>>>> > > > >>>>>> beans.
> >>>>>>> > > > >>>>>> > > > > > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
> >>>>>>> create a
> >>>>>>> > own
> >>>>>>> > > > >>>>>> binding.
> >>>>>>> > > > >>>>>> > > > > > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
> >>>>>>> > > > >>>>>> luisalves00@gmail.com>:
> >>>>>>> > > > >>>>>> > > > > > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> >>>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
> >>>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/
> CacheResult.html
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that
> >>>>>>> annotation we get
> >>>>>>> > > the
> >>>>>>> > > > >>>>>> > > interceptor
> >>>>>>> > > > >>>>>> > > > to
> >>>>>>> > > > >>>>>> > > > > > >>> work?
> >>>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
> >>>>>>> myself....as I
> >>>>>>> > > said
> >>>>>>> > > > >>>>>> I cannot
> >>>>>>> > > > >>>>>> > > > > modify
> >>>>>>> > > > >>>>>> > > > > > >>> the
> >>>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM,
> Thomas
> >>>>>>> > > Andraschko <
> >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
> >>>>>>> > internally
> >>>>>>> > > > >>>>>> CacheResult
> >>>>>>> > > > >>>>>> > > > works
> >>>>>>> > > > >>>>>> > > > > > >>> but our
> >>>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
> >>>>>>> interceptors
> >>>>>>> > by
> >>>>>>> > > a
> >>>>>>> > > > >>>>>> binding
> >>>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
> >>>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the
> >>>>>>> doc
> >>>>>>> > > > >>>>>> (@Interceptors,
> >>>>>>> > > > >>>>>> > > > > > @Intercepted,
> >>>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> >>>>>>> > > > >>>>>> > > > > > >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
> >>>>>>> Andraschko <
> >>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > > >:
> >>>>>>> > > > >>>>>> > > > > > >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
> >>>>>>> > > interceptorbinding.
> >>>>>>> > > > >>>>>> Do you
> >>>>>>> > > > >>>>>> > > mean
> >>>>>>> > > > >>>>>> > > > > that
> >>>>>>> > > > >>>>>> > > > > > >>> it
> >>>>>>> > > > >>>>>> > > > > > >>> > does
> >>>>>>> > > > >>>>>> > > > > > >>> > > > work without?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb
> >>>>>>> Luís
> >>>>>>> > Alves
> >>>>>>> > > :
> >>>>>>> > > > >>>>>> > > > > > >>> > > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to
> remove
> >>>>>>> > > > >>>>>> @InterceptorBinding?
> >>>>>>> > > > >>>>>> > > and
> >>>>>>> > > > >>>>>> > > > > > check
> >>>>>>> > > > >>>>>> > > > > > >>> if
> >>>>>>> > > > >>>>>> > > > > > >>> > it
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> works?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.
> CacheResult
> >>>>>>> is
> >>>>>>> > > > standard
> >>>>>>> > > > >>>>>> so I
> >>>>>>> > > > >>>>>> > > don't
> >>>>>>> > > > >>>>>> > > > > want
> >>>>>>> > > > >>>>>> > > > > > >>> to
> >>>>>>> > > > >>>>>> > > > > > >>> > > extend
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
> >>>>>>> @InterceptorBinding.....if
> >>>>>>> > > this
> >>>>>>> > > > >>>>>> is really
> >>>>>>> > > > >>>>>> > > the
> >>>>>>> > > > >>>>>> > > > > > >>> problem.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM,
> >>>>>>> Luís
> >>>>>>> > Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface
> >>>>>>> CustomInterceptor
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > {
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > }
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
> >>>>>>> > > @InterceptorBinding....but
> >>>>>>> > > > >>>>>> not 100%
> >>>>>>> > > > >>>>>> > > > > > >>> sure....what
> >>>>>>> > > > >>>>>> > > > > > >>> > is
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06
> PM,
> >>>>>>> Luís
> >>>>>>> > > Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your
> >>>>>>> tests
> >>>>>>> > with
> >>>>>>> > > > the
> >>>>>>> > > > >>>>>> > > > @CacheResult
> >>>>>>> > > > >>>>>> > > > > > >>> > > interceptor
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57
> >>>>>>> PM, Thomas
> >>>>>>> > > > >>>>>> Andraschko <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com>
> >>>>>>> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
> >>>>>>> interceptor is
> >>>>>>> > > really
> >>>>>>> > > > >>>>>> called
> >>>>>>> > > > >>>>>> > ;)
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00
> >>>>>>> Luís Alves <
> >>>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> >:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the
> @CustomInterceptor
> >>>>>>> > > declaration
> >>>>>>> > > > >>>>>> of the
> >>>>>>> > > > >>>>>> > > > > > interceptor
> >>>>>>> > > > >>>>>> > > > > > >>> for
> >>>>>>> > > > >>>>>> > > > > > >>> > > the
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
> >>>>>>> > called....SO
> >>>>>>> > > it
> >>>>>>> > > > >>>>>> should
> >>>>>>> > > > >>>>>> > > work
> >>>>>>> > > > >>>>>> > > > > for
> >>>>>>> > > > >>>>>> > > > > > >>> the
> >>>>>>> > > > >>>>>> > > > > > >>> > > cache
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> as
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at
> >>>>>>> 12:43 PM,
> >>>>>>> > Luís
> >>>>>>> > > > >>>>>> Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom
> >>>>>>> one (in
> >>>>>>> > fact
> >>>>>>> > > > is
> >>>>>>> > > > >>>>>> a
> >>>>>>> > > > >>>>>> > "copy"
> >>>>>>> > > > >>>>>> > > of
> >>>>>>> > > > >>>>>> > > > > > yours
> >>>>>>> > > > >>>>>> > > > > > >>> > that
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> logs
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
> >>>>>>> CustomInterceptorImpl
> >>>>>>> > > > >>>>>> implements
> >>>>>>> > > > >>>>>> > > > > > Serializable
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final
> >>>>>>> long
> >>>>>>> > > > >>>>>> serialVersionUID =
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger
> logger;
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> >>>>>>> > > > >>>>>> interceptIt(InvocationContext
> >>>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay
> >>>>>>> :)
> >>>>>>> > > > >>>>>> > CustomInterceptorImpl
> >>>>>>> > > > >>>>>> > > > was
> >>>>>>> > > > >>>>>> > > > > > >>> > called");
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
> >>>>>>> > > > >>>>>> invocationContext.proceed();
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the
> >>>>>>> beans.xml (for
> >>>>>>> > > > service
> >>>>>>> > > > >>>>>> and
> >>>>>>> > > > >>>>>> > repo
> >>>>>>> > > > >>>>>> > > > > > layers):
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> >>>>>>> > > encoding="UTF-8"?>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> >>>>>>> > > http://java.sun.com/xml
> >>>>>>> > > > >>>>>> /ns/javaee
> >>>>>>> > > > >>>>>> > "
> >>>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> http://www.w3.org/2001/XMLSche
> >>>>>>> > > > >>>>>> ma-instance"
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>>  xsi:schemaLocation="http://
> >>>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> http://java.sun.com/xml/ns/jav
> >>>>>>> > > > >>>>>> aee/beans_1_0.xsd
> >>>>>>> > > > >>>>>> > ">
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> >  <class>org.jsr107.ri.annotati
> >>>>>>> > > > >>>>>> ons.cdi.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> CacheResultInterceptor</class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>>  <class>eu.gls.ddtm.config.
> >>>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the
> service
> >>>>>>> layer
> >>>>>>> > but
> >>>>>>> > > > not
> >>>>>>> > > > >>>>>> on the
> >>>>>>> > > > >>>>>> > > > > > >>> @Repository :(
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10
> >>>>>>> (CDI
> >>>>>>> > 1.x)...
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
> >>>>>>> 11:50 AM,
> >>>>>>> > > > Thomas
> >>>>>>> > > > >>>>>> > > Andraschko
> >>>>>>> > > > >>>>>> > > > <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> andraschko.thomas@gmail.com>
> >>>>>>> > wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a
> custom
> >>>>>>> > > interceptor
> >>>>>>> > > > >>>>>> and check
> >>>>>>> > > > >>>>>> > > if
> >>>>>>> > > > >>>>>> > > > > it's
> >>>>>>> > > > >>>>>> > > > > > >>> > > invoked?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> >>>>>>> > > > weld-2.0.0.Final
> >>>>>>> > > > >>>>>> or
> >>>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> have a
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in
> the
> >>>>>>> unit
> >>>>>>> > test
> >>>>>>> > > as
> >>>>>>> > > > >>>>>> there is
> >>>>>>> > > > >>>>>> > > > > > something
> >>>>>>> > > > >>>>>> > > > > > >>> > > broken,
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i
> >>>>>>> posted
> >>>>>>> > > before.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
> >>>>>>> great if
> >>>>>>> > you
> >>>>>>> > > > >>>>>> could
> >>>>>>> > > > >>>>>> > > provide a
> >>>>>>> > > > >>>>>> > > > > > >>> unittest
> >>>>>>> > > > >>>>>> > > > > > >>> > > for
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> the
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
> >>>>>>> prepare it by
> >>>>>>> > > > >>>>>> myself.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40
> >>>>>>> GMT+02:00 Luís
> >>>>>>> > > Alves
> >>>>>>> > > > <
> >>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > >:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
> >>>>>>> success...@CacheResult
> >>>>>>> > > on
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
> >>>>>>> > > SomeRepository
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work
> :S
> >>>>>>> not sure
> >>>>>>> > > > what
> >>>>>>> > > > >>>>>> I'm
> >>>>>>> > > > >>>>>> > doing
> >>>>>>> > > > >>>>>> > > > > > wrong.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018
> at
> >>>>>>> 11:03
> >>>>>>> > AM,
> >>>>>>> > > > >>>>>> Luís Alves
> >>>>>>> > > > >>>>>> > <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> >>>>>>> > > CustomBaseRepository
> >>>>>>> > > > >>>>>> for
> >>>>>>> > > > >>>>>> > > > now...but
> >>>>>>> > > > >>>>>> > > > > > >>> still
> >>>>>>> > > > >>>>>> > > > > > >>> > > can't
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
> >>>>>>> work...here is
> >>>>>>> > my
> >>>>>>> > > > >>>>>> beans.xml:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
> >>>>>>> > > > >>>>>> encoding="UTF-8"?>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> >>>>>>> > > > http://java.sun.com/
> >>>>>>> > > > >>>>>> > > > xml/ns/javaee"
> >>>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > http://www.w3.org/2001/XMLSche
> >>>>>>> > > > >>>>>> ma-instance"
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> >  xsi:schemaLocation="http://
> >>>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> http://java.sun.com/xml/ns/
> >>>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
> >>>>>>> > > > >>>>>> > > > > ">
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>>  <class>org.jsr107.ri.
> >>>>>>> > > > >>>>>> > > annotations.cdi.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> CacheResultInterceptor</class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>>  <class>org.jsr107.ri.
> >>>>>>> > > > >>>>>> > > annotations.cdi.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> CacheRemoveEntryInterceptor</
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> ons.cdi.CacheRemoveAllIntercep
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018
> >>>>>>> at 10:45
> >>>>>>> > > AM,
> >>>>>>> > > > >>>>>> Luís
> >>>>>>> > > > >>>>>> > Alves
> >>>>>>> > > > >>>>>> > > <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
> >>>>>>> correctly if
> >>>>>>> > > they
> >>>>>>> > > > >>>>>> are on
> >>>>>>> > > > >>>>>> > the
> >>>>>>> > > > >>>>>> > > > > > >>> bean.xml
> >>>>>>> > > > >>>>>> > > > > > >>> > they
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated
> >>>>>>> one don't
> >>>>>>> > > > work.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure
> >>>>>>> why I
> >>>>>>> > didn't
> >>>>>>> > > > had
> >>>>>>> > > > >>>>>> it
> >>>>>>> > > > >>>>>> > > before)
> >>>>>>> > > > >>>>>> > > > > > >>> getting:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > org.apache.deltaspike.data.imp
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation
> >>>>>>> for class
> >>>>>>> > > > class
> >>>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a
> >>>>>>> valid
> >>>>>>> > > Entity? I
> >>>>>>> > > > >>>>>> got this
> >>>>>>> > > > >>>>>> > > > base
> >>>>>>> > > > >>>>>> > > > > > >>> class
> >>>>>>> > > > >>>>>> > > > > > >>> > for
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> some
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
> >>>>>>> behavior:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract
> class
> >>>>>>> > > > >>>>>> CustomBaseRepository
> >>>>>>> > > > >>>>>> > > <E
> >>>>>>> > > > >>>>>> > > > > > >>> extends
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends
> Serializable>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> >>>>>>> > > > >>>>>> > AbstractEntityRepository<E,
> >>>>>>> > > > >>>>>> > > K>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
> >>>>>>> inheritance
> >>>>>>> > is
> >>>>>>> > > > >>>>>> supposed
> >>>>>>> > > > >>>>>> > to
> >>>>>>> > > > >>>>>> > > > work
> >>>>>>> > > > >>>>>> > > > > > >>> with
> >>>>>>> > > > >>>>>> > > > > > >>> > the
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20,
> 2018
> >>>>>>> at 10:23
> >>>>>>> > > AM,
> >>>>>>> > > > >>>>>> Thomas
> >>>>>>> > > > >>>>>> > > > > > Andraschko
> >>>>>>> > > > >>>>>> > > > > > >>> <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> andraschko.thomas@gmail.com>
> >>>>>>> > > > >>>>>> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> > > https://github.com/apache/delt
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> > modules/partial-bean/impl/src/
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> e/test/core/api/partialbean/
> >>>>>>> > > > uc008
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
> >>>>>>> GMT+02:00
> >>>>>>> > > > Thomas
> >>>>>>> > > > >>>>>> > > Andraschko
> >>>>>>> > > > >>>>>> > > > <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> andraschko.thomas@gmail.com
> >>>>>>> > >:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
> >>>>>>> generell
> >>>>>>> > > > should
> >>>>>>> > > > >>>>>> be
> >>>>>>> > > > >>>>>> > > > supported
> >>>>>>> > > > >>>>>> > > > > > but
> >>>>>>> > > > >>>>>> > > > > > >>> only
> >>>>>>> > > > >>>>>> > > > > > >>> > > via
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
> >>>>>>> "@Interceptors,
> >>>>>>> > > > >>>>>> @Intercepted
> >>>>>>> > > > >>>>>> > and
> >>>>>>> > > > >>>>>> > > > > > >>> @Decorator"
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
> >>>>>>> GMT+02:00
> >>>>>>> > > > Luís
> >>>>>>> > > > >>>>>> Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found
> >>>>>>> that
> >>>>>>> > > > >>>>>> @Repository is
> >>>>>>> > > > >>>>>> > > > actually
> >>>>>>> > > > >>>>>> > > > > a
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found:
> >>>>>>> "Currently CDI
> >>>>>>> > > > >>>>>> Interceptors
> >>>>>>> > > > >>>>>> > > applied
> >>>>>>> > > > >>>>>> > > > > via
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator
> >>>>>>> are not
> >>>>>>> > > > >>>>>> supported by
> >>>>>>> > > > >>>>>> > our
> >>>>>>> > > > >>>>>> > > > > > proxies!
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20,
> >>>>>>> 2018 at
> >>>>>>> > > 10:11
> >>>>>>> > > > >>>>>> AM, Luís
> >>>>>>> > > > >>>>>> > > > > Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> >>>>>>> > > > @ApplicationScoped
> >>>>>>> > > > >>>>>> the
> >>>>>>> > > > >>>>>> > > > > interceptor
> >>>>>>> > > > >>>>>> > > > > > >>> is
> >>>>>>> > > > >>>>>> > > > > > >>> > not
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
> >>>>>>> why...can't
> >>>>>>> > > > >>>>>> @Repository
> >>>>>>> > > > >>>>>> > > > methods
> >>>>>>> > > > >>>>>> > > > > > be
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr
> >>>>>>> 20, 2018 at
> >>>>>>> > > > 9:53
> >>>>>>> > > > >>>>>> AM,
> >>>>>>> > > > >>>>>> > Luís
> >>>>>>> > > > >>>>>> > > > > Alves
> >>>>>>> > > > >>>>>> > > > > > <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
> >>>>>>> > proxied...it
> >>>>>>> > > > >>>>>> should be
> >>>>>>> > > > >>>>>> > > > OK...I
> >>>>>>> > > > >>>>>> > > > > > >>> guess
> >>>>>>> > > > >>>>>> > > > > > >>> > it's
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> like
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> repositories.
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr
> >>>>>>> 20, 2018
> >>>>>>> > at
> >>>>>>> > > > >>>>>> 9:44 AM,
> >>>>>>> > > > >>>>>> > Luís
> >>>>>>> > > > >>>>>> > > > > > Alves <
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository
> >>>>>>> is
> >>>>>>> > > @Dependent
> >>>>>>> > > > >>>>>> > > scoped...and
> >>>>>>> > > > >>>>>> > > > > > seems
> >>>>>>> > > > >>>>>> > > > > > >>> > that
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> interceptors, so
> >>>>>>> > > > >>>>>> > > > @CacheResult(cacheName
> >>>>>>> > > > >>>>>> > > > > =
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember
> >>>>>>> that some
> >>>>>>> > > one
> >>>>>>> > > > >>>>>> proposed
> >>>>>>> > > > >>>>>> > > that
> >>>>>>> > > > >>>>>> > > > > > >>> > @Repository
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > @ApplicationScoped...if
> >>>>>>> > > > I
> >>>>>>> > > > >>>>>> change
> >>>>>>> > > > >>>>>> > > them
> >>>>>>> > > > >>>>>> > > > > do
> >>>>>>> > > > >>>>>> > > > > > I
> >>>>>>> > > > >>>>>> > > > > > >>> have
> >>>>>>> > > > >>>>>> > > > > > >>> > > to
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> EntityManager
> >>>>>>> > producer
> >>>>>>> > > is
> >>>>>>> > > > >>>>>> the
> >>>>>>> > > > >>>>>> > > > following:
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>  @Produces
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>>  @RequestScoped
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
> >>>>>>> > > EntityManager
> >>>>>>> > > > >>>>>> get()
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>>  return
> >>>>>>> > > > >>>>>> entityManager;
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose
> >>>>>>> I'll have a
> >>>>>>> > > > >>>>>> different EM
> >>>>>>> > > > >>>>>> > > for
> >>>>>>> > > > >>>>>> > > > > > each
> >>>>>>> > > > >>>>>> > > > > > >>> HTTP
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> onMessage() /
> >>>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >> >
> >>>>>>> > > > >>>>>> > > > > > >>> > > >>
> >>>>>>> > > > >>>>>> > > > > > >>> > > >
> >>>>>>> > > > >>>>>> > > > > > >>> > >
> >>>>>>> > > > >>>>>> > > > > > >>> >
> >>>>>>> > > > >>>>>> > > > > > >>>
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >>
> >>>>>>> > > > >>>>>> > > > > > >
> >>>>>>> > > > >>>>>> > > > > >
> >>>>>>> > > > >>>>>> > > > >
> >>>>>>> > > > >>>>>> > > >
> >>>>>>> > > > >>>>>> > >
> >>>>>>> > > > >>>>>> >
> >>>>>>> > > > >>>>>>
> >>>>>>> > > > >>>>>
> >>>>>>> > > > >>>>>
> >>>>>>> > > > >>>>
> >>>>>>> > > > >>>
> >>>>>>> > > > >>
> >>>>>>> > > > >
> >>>>>>> > > >
> >>>>>>> > >
> >>>>>>> >
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Should be fixed now by DELTASPIKE-1339.

2018-04-23 11:31 GMT+02:00 Luís Alves <lu...@gmail.com>:

> when:
>
> //Call the annotated method
>       result = this.proceed(invocation);
>
> org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext.
> getProceedOriginalReturnValue()  <-- the correct value is here, but is
> not used...
>
>
>
> On Mon, Apr 23, 2018 at 10:25 AM, Luís Alves <lu...@gmail.com>
> wrote:
>
>> well...I think the null is cause by the invocation order...since the
>> cache is executed first I think it gets the return from the other
>> interceptor which is null....nevertheless this is also a weird behavior,
>> because I probably can't have the cache annotation mixed with other
>> annotation, such as logging or other stuff, because the result will not be
>> the expected one.
>>
>>
>>
>> On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> also with:
>>>
>>>  @CustomInterceptor
>>>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
>>>     public Location findLocationById(@CacheKey Integer locationId)
>>>
>>> my cache never get's populated....on org.jsr107.ri.annotations.Abst
>>> ractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we
>>> have this chunk of code:
>>>
>>> try {
>>>       //Call the annotated method
>>>       result = this.proceed(invocation); //this returns null even if
>>> find returns a location....so I also suspect that's something wrong with
>>> the delegation...
>>>
>>>       //Cache non-null result
>>>       if (result != null) {
>>>         cache.put(cacheKey, result);
>>>       }
>>>
>>>       return result;
>>>     }
>>>
>>>
>>>
>>>
>>>
>>> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
>>> wrote:
>>>
>>>> something in the DelegateManualInvocationHandler vs
>>>> InterceptManualInvocationHandler....
>>>>
>>>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
>>>> wrote:
>>>>
>>>>> Stack without the @CustomInterceptor:
>>>>>
>>>>>
>>>>>
>>>>> Stack with the  @CustomInterceptor:
>>>>>
>>>>>
>>>>>
>>>>> Can't understand the different behavior :( seem like there's a
>>>>> previous lookup for @InterceptorBinding annotations...and since none was
>>>>> found it has skipped the method...but the code tells otherwise...any idea?
>>>>>
>>>>>
>>>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> so far I think the *method*.getDeclaredAnnotations() when I don't
>>>>>> have the @CustomInterceptor is the findBy instead of the
>>>>>> findLocationById...but I can't understand why :(
>>>>>> that's why no annotation it's on the list, but makes no sense. I'm
>>>>>> going to try to figure out the behaviour with and without the
>>>>>> @CustomInterceptor.
>>>>>>
>>>>>>
>>>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
>>>>>> andraschko.thomas@gmail.com> wrote:
>>>>>>
>>>>>>> do you mean that method.getDeclaredAnnotations does not return
>>>>>>> CacheResult?
>>>>>>>
>>>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>>>>
>>>>>>> > Good morning,
>>>>>>> >
>>>>>>> > there's still something weird. Only works when I got the
>>>>>>> @CustomInterceptor
>>>>>>> > there.
>>>>>>> >
>>>>>>> >     @CacheResult(cacheName = "loc-cache")
>>>>>>> >     @CustomInterceptor  //only seems to work when I have this
>>>>>>> annotation
>>>>>>> > here
>>>>>>> >     public Location findLocationById(@CacheKey Integer locId)
>>>>>>> >     {
>>>>>>> >         //just a wrapper for caching...
>>>>>>> >         return findBy(locId);
>>>>>>> >     }
>>>>>>> >
>>>>>>> > I'm trying to understand from the trace why the @CacheResult is
>>>>>>> not visible
>>>>>>> > alone...
>>>>>>> >
>>>>>>> >  addInterceptorBindings(beanManager, bindings,
>>>>>>> > method.getDeclaredAnnotations());  <--should see all the
>>>>>>> annotation...
>>>>>>> >
>>>>>>> >
>>>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>>>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>>>> >
>>>>>>> > > Would be great if you could create a issue + unittest, so i can
>>>>>>> fix it
>>>>>>> > next
>>>>>>> > > week.
>>>>>>> > >
>>>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>>> > >
>>>>>>> > > > I have to leave :( don't do any change until I can confirm
>>>>>>> everything
>>>>>>> > ;(
>>>>>>> > > >
>>>>>>> > > > have a nice weekend.
>>>>>>> > > >
>>>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
>>>>>>> luisalves00@gmail.com>
>>>>>>> > > wrote:
>>>>>>> > > >
>>>>>>> > > > > well....I think we might have an issue with the proceed part:
>>>>>>> > > > >
>>>>>>> > > > >  try {
>>>>>>> > > > >       //Call the annotated method
>>>>>>> > > > >       result = this.proceed(invocation); <-- this is not
>>>>>>> calling my
>>>>>>> > > > > method...I think is because the invocation is
>>>>>>> > > > org.apache.deltaspike.proxy.
>>>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of
>>>>>>> my
>>>>>>> > method
>>>>>>> > > :(
>>>>>>> > > > >
>>>>>>> > > > > any ideas?
>>>>>>> > > > >
>>>>>>> > > > >
>>>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>>>>>>> luisalves00@gmail.com>
>>>>>>> > > > wrote:
>>>>>>> > > > >
>>>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>>>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>>>>>>> > > > >>
>>>>>>> > > > >> not sure the cache is actually working but I think it's not
>>>>>>> related
>>>>>>> > > with
>>>>>>> > > > >> DS. If possible release a version with the fix:
>>>>>>> > > > >>
>>>>>>> > > > >> @ApplicationScoped
>>>>>>> > > > >> @Specializes
>>>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>>>>>>> > > > >> InterceptorLookup
>>>>>>> > > > >> {
>>>>>>> > > > >>
>>>>>>> > > > >>     @Override
>>>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
>>>>>>> beanManager,
>>>>>>> > > > >> ArrayList<Annotation> bindings,
>>>>>>> > > > >>             Annotation[] declaredAnnotations)
>>>>>>> > > > >>     {
>>>>>>> > > > >>         for (Annotation annotation : declaredAnnotations)
>>>>>>> > > > >>         {
>>>>>>> > > > >>             if (bindings.contains(annotation))
>>>>>>> > > > >>             {
>>>>>>> > > > >>                 continue;
>>>>>>> > > > >>             }
>>>>>>> > > > >>
>>>>>>> > > > >>             Class<? extends Annotation> annotationType =
>>>>>>> > > > >> annotation.annotationType();
>>>>>>> > > > >>
>>>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>>>>>>> > annotationType))*
>>>>>>> > > > >>             {
>>>>>>> > > > >>                 bindings.add(annotation);
>>>>>>> > > > >>             }
>>>>>>> > > > >>
>>>>>>> > > > >>             if (beanManager.isStereotype(annotationType))
>>>>>>> *///fun
>>>>>>> > > part
>>>>>>> > > > >> is that here is well done ;)*
>>>>>>> > > > >>             {
>>>>>>> > > > >>                 for (Annotation subAnnotation :
>>>>>>> > > > >> annotationType.getDeclaredAnnotations())
>>>>>>> > > > >>                 {
>>>>>>> > > > >>                     if (bindings.contains(subAnnotation))
>>>>>>> > > > >>                     {
>>>>>>> > > > >>                         continue;
>>>>>>> > > > >>                     }
>>>>>>> > > > >>
>>>>>>> > > > >>                     if (subAnnotation.annotationType(
>>>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>>>>>>> > > > >>                     {
>>>>>>> > > > >>                         bindings.add(subAnnotation);
>>>>>>> > > > >>                     }
>>>>>>> > > > >>                 }
>>>>>>> > > > >>             }
>>>>>>> > > > >>         }
>>>>>>> > > > >>     }
>>>>>>> > > > >>
>>>>>>> > > > >> Thanks very much Thomas :)
>>>>>>> > > > >>
>>>>>>> > > > >>
>>>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>>>>>>> luisalves00@gmail.com>
>>>>>>> > > > >> wrote:
>>>>>>> > > > >>
>>>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>>>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>>>>>>> > > > >>>
>>>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>>>>>>> luisalves00@gmail.com
>>>>>>> > >
>>>>>>> > > > >>> wrote:
>>>>>>> > > > >>>
>>>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup?
>>>>>>> which jar I
>>>>>>> > > have
>>>>>>> > > > >>>> to import?!
>>>>>>> > > > >>>>
>>>>>>> > > > >>>>
>>>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>>>>>>> > luisalves00@gmail.com>
>>>>>>> > > > >>>> wrote:
>>>>>>> > > > >>>>
>>>>>>> > > > >>>>> I'll try....@Specializes on
>>>>>>> CustomDeltaSpikeProxyIntercept
>>>>>>> > orLookup
>>>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
>>>>>>> trick.
>>>>>>> > > > >>>>>
>>>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>>>>>>> > > > >>>>>
>>>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
>>>>>>> /2.0/javax/enterprise/inject/s
>>>>>>> > > > >>>>>> pi/BeanManager.html#isIntercep
>>>>>>> torBinding-java.lang.Class-
>>>>>>> > > > >>>>>>
>>>>>>> > > > >>>>>> Would be great if you can test it, create a issue and
>>>>>>> provide a
>>>>>>> > > > patch.
>>>>>>> > > > >>>>>>
>>>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>>> > > > >>>>>>
>>>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>>>>>>> expert
>>>>>>> > on
>>>>>>> > > > the
>>>>>>> > > > >>>>>> mailing
>>>>>>> > > > >>>>>> > list that want to help? ;)
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
>>>>>>> /7/api/javax/enterprise/inject
>>>>>>> > > /spi/
>>>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>>>>>>> terceptorBinding-javax.enterpr
>>>>>>> > > > >>>>>> ise.inject.spi
>>>>>>> > > > >>>>>> > .
>>>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>>>>> > > > >>>>>> (annotationType.
>>>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we
>>>>>>> need some
>>>>>>> > > > >>>>>> runtime way
>>>>>>> > > > >>>>>> > to check it...
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> > BTW if a solutions is found can you make it available
>>>>>>> on
>>>>>>> > 1.8.2?
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>>>>>>> lob/master/cache-annotations-
>>>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
>>>>>>> c/main/java/org/jsr107/ri/
>>>>>>> > anno
>>>>>>> > > > >>>>>> tations/cdi/
>>>>>>> > > > >>>>>> > > InterceptorExtension.java
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> > > Just check our code here:
>>>>>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
>>>>>>> rc/main/java/org/apache/
>>>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>>>>>>> > DeltaSpikeProxyInterceptorLo
>>>>>>> > > ok
>>>>>>> > > > >>>>>> > up.java#L90
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>>>>>>> > > interceptor
>>>>>>> > > > >>>>>> binding
>>>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API).
>>>>>>> Then your
>>>>>>> > case
>>>>>>> > > > >>>>>> should
>>>>>>> > > > >>>>>> > work.
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>>>>>>> > luisalves00@gmail.com
>>>>>>> > > >:
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> > > > This is the reference implementation of the
>>>>>>> interceptors:
>>>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
>>>>>>> > > > >>>>>> > > > They have:
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>>>>>>> > 2001/XMLSchema-instance
>>>>>>> > > "
>>>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
>>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>>>>> > > > >>>>>> > > >     <interceptors>
>>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
>>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>>> > > > >>>>>> > CachePutInterceptor</class>
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>>>> > > ns.cdi.CacheRemoveEntryInterce
>>>>>>> > > > >>>>>> ptor</
>>>>>>> > > > >>>>>> > class>
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>>>> > > ns.cdi.CacheRemoveAllIntercept
>>>>>>> > > > >>>>>> or</class>
>>>>>>> > > > >>>>>> > > >     </interceptors>
>>>>>>> > > > >>>>>> > > > </beans>
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > and they have 2files with:
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>>>>>> InterceptorExtension
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > and
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>>>>>> CdiAnnotationProviderImpl
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas
>>>>>>> Andraschko <
>>>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with
>>>>>>> CDI:
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
>>>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > > We only support 1) currently.
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult
>>>>>>> will work
>>>>>>> > > even
>>>>>>> > > > a
>>>>>>> > > > >>>>>> normal
>>>>>>> > > > >>>>>> > > CDI
>>>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>>>>>>> > "normal"
>>>>>>> > > > CDI
>>>>>>> > > > >>>>>> way.
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>>>>>>> > > > luisalves00@gmail.com
>>>>>>> > > > >>>>>> >:
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>>>>>>> > > > jsr107spec/issues/401
>>>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
>>>>>>> DS...:(
>>>>>>> > > > >>>>>> > > > > >
>>>>>>> > > > >>>>>> > > > > >
>>>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>>>>> > > > >>>>>> luisalves00@gmail.com
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> > > > > wrote:
>>>>>>> > > > >>>>>> > > > > >
>>>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > Red Hat
>>>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
>>>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
>>>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>>>>> > > > >>>>>> > > > > > >  */
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>>>>>>> > > > >>>>>> > > > > > > @Documented
>>>>>>> > > > >>>>>> > > > > > > @NormalScope
>>>>>>> > > > >>>>>> > > > > > > @Inherited
>>>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > }
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for
>>>>>>> the
>>>>>>> > > > >>>>>> interceptors? Can
>>>>>>> > > > >>>>>> > > you
>>>>>>> > > > >>>>>> > > > > > point
>>>>>>> > > > >>>>>> > > > > > > me out the code?
>>>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations
>>>>>>> even if
>>>>>>> > > they
>>>>>>> > > > >>>>>> don't
>>>>>>> > > > >>>>>> > have
>>>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>>>>>>> registered
>>>>>>> > > > >>>>>> > interceptors?
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves
>>>>>>> <
>>>>>>> > > > >>>>>> > luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > > > > > wrote:
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>>>>>>> Andraschko
>>>>>>> > <
>>>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
>>>>>>> binding.
>>>>>>> > > > >>>>>> CacheResult is
>>>>>>> > > > >>>>>> > > > > actually
>>>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at
>>>>>>> the
>>>>>>> > cache
>>>>>>> > > > API
>>>>>>> > > > >>>>>> ;)
>>>>>>> > > > >>>>>> > > > > > >>>
>>>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
>>>>>>> available (
>>>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi),
>>>>>>> i'm not
>>>>>>> > > > sure
>>>>>>> > > > >>>>>> if this
>>>>>>> > > > >>>>>> > > > would
>>>>>>> > > > >>>>>> > > > > > >>> work
>>>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
>>>>>>> interceptors to
>>>>>>> > > > partial
>>>>>>> > > > >>>>>> beans.
>>>>>>> > > > >>>>>> > > > > > >>>
>>>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
>>>>>>> create a
>>>>>>> > own
>>>>>>> > > > >>>>>> binding.
>>>>>>> > > > >>>>>> > > > > > >>>
>>>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>>>>> > > > >>>>>> luisalves00@gmail.com>:
>>>>>>> > > > >>>>>> > > > > > >>>
>>>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>>>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
>>>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that
>>>>>>> annotation we get
>>>>>>> > > the
>>>>>>> > > > >>>>>> > > interceptor
>>>>>>> > > > >>>>>> > > > to
>>>>>>> > > > >>>>>> > > > > > >>> work?
>>>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>>>>>>> myself....as I
>>>>>>> > > said
>>>>>>> > > > >>>>>> I cannot
>>>>>>> > > > >>>>>> > > > > modify
>>>>>>> > > > >>>>>> > > > > > >>> the
>>>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>>>>>>> > > Andraschko <
>>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>>>>>>> > internally
>>>>>>> > > > >>>>>> CacheResult
>>>>>>> > > > >>>>>> > > > works
>>>>>>> > > > >>>>>> > > > > > >>> but our
>>>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>>>>>>> interceptors
>>>>>>> > by
>>>>>>> > > a
>>>>>>> > > > >>>>>> binding
>>>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>>>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the
>>>>>>> doc
>>>>>>> > > > >>>>>> (@Interceptors,
>>>>>>> > > > >>>>>> > > > > > @Intercepted,
>>>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>>>>>>> Andraschko <
>>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > > >:
>>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>>>>>>> > > interceptorbinding.
>>>>>>> > > > >>>>>> Do you
>>>>>>> > > > >>>>>> > > mean
>>>>>>> > > > >>>>>> > > > > that
>>>>>>> > > > >>>>>> > > > > > >>> it
>>>>>>> > > > >>>>>> > > > > > >>> > does
>>>>>>> > > > >>>>>> > > > > > >>> > > > work without?
>>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb
>>>>>>> Luís
>>>>>>> > Alves
>>>>>>> > > :
>>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>>>>>>> > > > >>>>>> @InterceptorBinding?
>>>>>>> > > > >>>>>> > > and
>>>>>>> > > > >>>>>> > > > > > check
>>>>>>> > > > >>>>>> > > > > > >>> if
>>>>>>> > > > >>>>>> > > > > > >>> > it
>>>>>>> > > > >>>>>> > > > > > >>> > > >> works?
>>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult
>>>>>>> is
>>>>>>> > > > standard
>>>>>>> > > > >>>>>> so I
>>>>>>> > > > >>>>>> > > don't
>>>>>>> > > > >>>>>> > > > > want
>>>>>>> > > > >>>>>> > > > > > >>> to
>>>>>>> > > > >>>>>> > > > > > >>> > > extend
>>>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
>>>>>>> @InterceptorBinding.....if
>>>>>>> > > this
>>>>>>> > > > >>>>>> is really
>>>>>>> > > > >>>>>> > > the
>>>>>>> > > > >>>>>> > > > > > >>> problem.
>>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM,
>>>>>>> Luís
>>>>>>> > Alves <
>>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface
>>>>>>> CustomInterceptor
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > {
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > }
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>>>>>>> > > @InterceptorBinding....but
>>>>>>> > > > >>>>>> not 100%
>>>>>>> > > > >>>>>> > > > > > >>> sure....what
>>>>>>> > > > >>>>>> > > > > > >>> > is
>>>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM,
>>>>>>> Luís
>>>>>>> > > Alves <
>>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your
>>>>>>> tests
>>>>>>> > with
>>>>>>> > > > the
>>>>>>> > > > >>>>>> > > > @CacheResult
>>>>>>> > > > >>>>>> > > > > > >>> > > interceptor
>>>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57
>>>>>>> PM, Thomas
>>>>>>> > > > >>>>>> Andraschko <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com>
>>>>>>> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
>>>>>>> interceptor is
>>>>>>> > > really
>>>>>>> > > > >>>>>> called
>>>>>>> > > > >>>>>> > ;)
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00
>>>>>>> Luís Alves <
>>>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> >:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>>>>>>> > > declaration
>>>>>>> > > > >>>>>> of the
>>>>>>> > > > >>>>>> > > > > > interceptor
>>>>>>> > > > >>>>>> > > > > > >>> for
>>>>>>> > > > >>>>>> > > > > > >>> > > the
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>>>>>>> > called....SO
>>>>>>> > > it
>>>>>>> > > > >>>>>> should
>>>>>>> > > > >>>>>> > > work
>>>>>>> > > > >>>>>> > > > > for
>>>>>>> > > > >>>>>> > > > > > >>> the
>>>>>>> > > > >>>>>> > > > > > >>> > > cache
>>>>>>> > > > >>>>>> > > > > > >>> > > >> as
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at
>>>>>>> 12:43 PM,
>>>>>>> > Luís
>>>>>>> > > > >>>>>> Alves <
>>>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom
>>>>>>> one (in
>>>>>>> > fact
>>>>>>> > > > is
>>>>>>> > > > >>>>>> a
>>>>>>> > > > >>>>>> > "copy"
>>>>>>> > > > >>>>>> > > of
>>>>>>> > > > >>>>>> > > > > > yours
>>>>>>> > > > >>>>>> > > > > > >>> > that
>>>>>>> > > > >>>>>> > > > > > >>> > > >> logs
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>>>>>>> CustomInterceptorImpl
>>>>>>> > > > >>>>>> implements
>>>>>>> > > > >>>>>> > > > > > Serializable
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final
>>>>>>> long
>>>>>>> > > > >>>>>> serialVersionUID =
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>>>>> > > > >>>>>> interceptIt(InvocationContext
>>>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay
>>>>>>> :)
>>>>>>> > > > >>>>>> > CustomInterceptorImpl
>>>>>>> > > > >>>>>> > > > was
>>>>>>> > > > >>>>>> > > > > > >>> > called");
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>>>>>>> > > > >>>>>> invocationContext.proceed();
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the
>>>>>>> beans.xml (for
>>>>>>> > > > service
>>>>>>> > > > >>>>>> and
>>>>>>> > > > >>>>>> > repo
>>>>>>> > > > >>>>>> > > > > > layers):
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>>>>>>> > > encoding="UTF-8"?>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>>>>>>> > > http://java.sun.com/xml
>>>>>>> > > > >>>>>> /ns/javaee
>>>>>>> > > > >>>>>> > "
>>>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> http://www.w3.org/2001/XMLSche
>>>>>>> > > > >>>>>> ma-instance"
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>>  xsi:schemaLocation="http://
>>>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> http://java.sun.com/xml/ns/jav
>>>>>>> > > > >>>>>> aee/beans_1_0.xsd
>>>>>>> > > > >>>>>> > ">
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> >  <class>org.jsr107.ri.annotati
>>>>>>> > > > >>>>>> ons.cdi.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> CacheResultInterceptor</class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>>  <class>eu.gls.ddtm.config.
>>>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service
>>>>>>> layer
>>>>>>> > but
>>>>>>> > > > not
>>>>>>> > > > >>>>>> on the
>>>>>>> > > > >>>>>> > > > > > >>> @Repository :(
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10
>>>>>>> (CDI
>>>>>>> > 1.x)...
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
>>>>>>> 11:50 AM,
>>>>>>> > > > Thomas
>>>>>>> > > > >>>>>> > > Andraschko
>>>>>>> > > > >>>>>> > > > <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> andraschko.thomas@gmail.com>
>>>>>>> > wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>>>>>>> > > interceptor
>>>>>>> > > > >>>>>> and check
>>>>>>> > > > >>>>>> > > if
>>>>>>> > > > >>>>>> > > > > it's
>>>>>>> > > > >>>>>> > > > > > >>> > > invoked?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>>>>>>> > > > weld-2.0.0.Final
>>>>>>> > > > >>>>>> or
>>>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>>>>> > > > >>>>>> > > > > > >>> > > >> have a
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the
>>>>>>> unit
>>>>>>> > test
>>>>>>> > > as
>>>>>>> > > > >>>>>> there is
>>>>>>> > > > >>>>>> > > > > > something
>>>>>>> > > > >>>>>> > > > > > >>> > > broken,
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i
>>>>>>> posted
>>>>>>> > > before.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
>>>>>>> great if
>>>>>>> > you
>>>>>>> > > > >>>>>> could
>>>>>>> > > > >>>>>> > > provide a
>>>>>>> > > > >>>>>> > > > > > >>> unittest
>>>>>>> > > > >>>>>> > > > > > >>> > > for
>>>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
>>>>>>> prepare it by
>>>>>>> > > > >>>>>> myself.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40
>>>>>>> GMT+02:00 Luís
>>>>>>> > > Alves
>>>>>>> > > > <
>>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > >:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>>>>>>> success...@CacheResult
>>>>>>> > > on
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>>>>>>> > > SomeRepository
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S
>>>>>>> not sure
>>>>>>> > > > what
>>>>>>> > > > >>>>>> I'm
>>>>>>> > > > >>>>>> > doing
>>>>>>> > > > >>>>>> > > > > > wrong.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at
>>>>>>> 11:03
>>>>>>> > AM,
>>>>>>> > > > >>>>>> Luís Alves
>>>>>>> > > > >>>>>> > <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>>>>>>> > > CustomBaseRepository
>>>>>>> > > > >>>>>> for
>>>>>>> > > > >>>>>> > > > now...but
>>>>>>> > > > >>>>>> > > > > > >>> still
>>>>>>> > > > >>>>>> > > > > > >>> > > can't
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
>>>>>>> work...here is
>>>>>>> > my
>>>>>>> > > > >>>>>> beans.xml:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>>>>> > > > >>>>>> encoding="UTF-8"?>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>>>>>>> > > > http://java.sun.com/
>>>>>>> > > > >>>>>> > > > xml/ns/javaee"
>>>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > http://www.w3.org/2001/XMLSche
>>>>>>> > > > >>>>>> ma-instance"
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> >  xsi:schemaLocation="http://
>>>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> http://java.sun.com/xml/ns/
>>>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>>>>>>> > > > >>>>>> > > > > ">
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>>  <class>org.jsr107.ri.
>>>>>>> > > > >>>>>> > > annotations.cdi.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> CacheResultInterceptor</class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>>  <class>org.jsr107.ri.
>>>>>>> > > > >>>>>> > > annotations.cdi.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> CacheRemoveEntryInterceptor</
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018
>>>>>>> at 10:45
>>>>>>> > > AM,
>>>>>>> > > > >>>>>> Luís
>>>>>>> > > > >>>>>> > Alves
>>>>>>> > > > >>>>>> > > <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
>>>>>>> correctly if
>>>>>>> > > they
>>>>>>> > > > >>>>>> are on
>>>>>>> > > > >>>>>> > the
>>>>>>> > > > >>>>>> > > > > > >>> bean.xml
>>>>>>> > > > >>>>>> > > > > > >>> > they
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated
>>>>>>> one don't
>>>>>>> > > > work.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure
>>>>>>> why I
>>>>>>> > didn't
>>>>>>> > > > had
>>>>>>> > > > >>>>>> it
>>>>>>> > > > >>>>>> > > before)
>>>>>>> > > > >>>>>> > > > > > >>> getting:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > org.apache.deltaspike.data.imp
>>>>>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation
>>>>>>> for class
>>>>>>> > > > class
>>>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a
>>>>>>> valid
>>>>>>> > > Entity? I
>>>>>>> > > > >>>>>> got this
>>>>>>> > > > >>>>>> > > > base
>>>>>>> > > > >>>>>> > > > > > >>> class
>>>>>>> > > > >>>>>> > > > > > >>> > for
>>>>>>> > > > >>>>>> > > > > > >>> > > >> some
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
>>>>>>> behavior:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>>>>> > > > >>>>>> CustomBaseRepository
>>>>>>> > > > >>>>>> > > <E
>>>>>>> > > > >>>>>> > > > > > >>> extends
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>>>>> > > > >>>>>> > AbstractEntityRepository<E,
>>>>>>> > > > >>>>>> > > K>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>>>>>>> inheritance
>>>>>>> > is
>>>>>>> > > > >>>>>> supposed
>>>>>>> > > > >>>>>> > to
>>>>>>> > > > >>>>>> > > > work
>>>>>>> > > > >>>>>> > > > > > >>> with
>>>>>>> > > > >>>>>> > > > > > >>> > the
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018
>>>>>>> at 10:23
>>>>>>> > > AM,
>>>>>>> > > > >>>>>> Thomas
>>>>>>> > > > >>>>>> > > > > > Andraschko
>>>>>>> > > > >>>>>> > > > > > >>> <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> andraschko.thomas@gmail.com>
>>>>>>> > > > >>>>>> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> > > https://github.com/apache/delt
>>>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> > modules/partial-bean/impl/src/
>>>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> e/test/core/api/partialbean/
>>>>>>> > > > uc008
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>>>>>>> GMT+02:00
>>>>>>> > > > Thomas
>>>>>>> > > > >>>>>> > > Andraschko
>>>>>>> > > > >>>>>> > > > <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> andraschko.thomas@gmail.com
>>>>>>> > >:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>>>>>>> generell
>>>>>>> > > > should
>>>>>>> > > > >>>>>> be
>>>>>>> > > > >>>>>> > > > supported
>>>>>>> > > > >>>>>> > > > > > but
>>>>>>> > > > >>>>>> > > > > > >>> only
>>>>>>> > > > >>>>>> > > > > > >>> > > via
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
>>>>>>> "@Interceptors,
>>>>>>> > > > >>>>>> @Intercepted
>>>>>>> > > > >>>>>> > and
>>>>>>> > > > >>>>>> > > > > > >>> @Decorator"
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>>>>>>> GMT+02:00
>>>>>>> > > > Luís
>>>>>>> > > > >>>>>> Alves <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found
>>>>>>> that
>>>>>>> > > > >>>>>> @Repository is
>>>>>>> > > > >>>>>> > > > actually
>>>>>>> > > > >>>>>> > > > > a
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found:
>>>>>>> "Currently CDI
>>>>>>> > > > >>>>>> Interceptors
>>>>>>> > > > >>>>>> > > applied
>>>>>>> > > > >>>>>> > > > > via
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator
>>>>>>> are not
>>>>>>> > > > >>>>>> supported by
>>>>>>> > > > >>>>>> > our
>>>>>>> > > > >>>>>> > > > > > proxies!
>>>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20,
>>>>>>> 2018 at
>>>>>>> > > 10:11
>>>>>>> > > > >>>>>> AM, Luís
>>>>>>> > > > >>>>>> > > > > Alves <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>>>>>>> > > > @ApplicationScoped
>>>>>>> > > > >>>>>> the
>>>>>>> > > > >>>>>> > > > > interceptor
>>>>>>> > > > >>>>>> > > > > > >>> is
>>>>>>> > > > >>>>>> > > > > > >>> > not
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>>>>>>> why...can't
>>>>>>> > > > >>>>>> @Repository
>>>>>>> > > > >>>>>> > > > methods
>>>>>>> > > > >>>>>> > > > > > be
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr
>>>>>>> 20, 2018 at
>>>>>>> > > > 9:53
>>>>>>> > > > >>>>>> AM,
>>>>>>> > > > >>>>>> > Luís
>>>>>>> > > > >>>>>> > > > > Alves
>>>>>>> > > > >>>>>> > > > > > <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>>>>>>> > proxied...it
>>>>>>> > > > >>>>>> should be
>>>>>>> > > > >>>>>> > > > OK...I
>>>>>>> > > > >>>>>> > > > > > >>> guess
>>>>>>> > > > >>>>>> > > > > > >>> > it's
>>>>>>> > > > >>>>>> > > > > > >>> > > >> like
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr
>>>>>>> 20, 2018
>>>>>>> > at
>>>>>>> > > > >>>>>> 9:44 AM,
>>>>>>> > > > >>>>>> > Luís
>>>>>>> > > > >>>>>> > > > > > Alves <
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository
>>>>>>> is
>>>>>>> > > @Dependent
>>>>>>> > > > >>>>>> > > scoped...and
>>>>>>> > > > >>>>>> > > > > > seems
>>>>>>> > > > >>>>>> > > > > > >>> > that
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> interceptors, so
>>>>>>> > > > >>>>>> > > > @CacheResult(cacheName
>>>>>>> > > > >>>>>> > > > > =
>>>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember
>>>>>>> that some
>>>>>>> > > one
>>>>>>> > > > >>>>>> proposed
>>>>>>> > > > >>>>>> > > that
>>>>>>> > > > >>>>>> > > > > > >>> > @Repository
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > @ApplicationScoped...if
>>>>>>> > > > I
>>>>>>> > > > >>>>>> change
>>>>>>> > > > >>>>>> > > them
>>>>>>> > > > >>>>>> > > > > do
>>>>>>> > > > >>>>>> > > > > > I
>>>>>>> > > > >>>>>> > > > > > >>> have
>>>>>>> > > > >>>>>> > > > > > >>> > > to
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>>>>>>> > producer
>>>>>>> > > is
>>>>>>> > > > >>>>>> the
>>>>>>> > > > >>>>>> > > > following:
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>>  @RequestScoped
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>>>>>>> > > EntityManager
>>>>>>> > > > >>>>>> get()
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>>  return
>>>>>>> > > > >>>>>> entityManager;
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose
>>>>>>> I'll have a
>>>>>>> > > > >>>>>> different EM
>>>>>>> > > > >>>>>> > > for
>>>>>>> > > > >>>>>> > > > > > each
>>>>>>> > > > >>>>>> > > > > > >>> HTTP
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
>>>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>>> > > > >>>>>> > > > > > >>>
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >>
>>>>>>> > > > >>>>>> > > > > > >
>>>>>>> > > > >>>>>> > > > > >
>>>>>>> > > > >>>>>> > > > >
>>>>>>> > > > >>>>>> > > >
>>>>>>> > > > >>>>>> > >
>>>>>>> > > > >>>>>> >
>>>>>>> > > > >>>>>>
>>>>>>> > > > >>>>>
>>>>>>> > > > >>>>>
>>>>>>> > > > >>>>
>>>>>>> > > > >>>
>>>>>>> > > > >>
>>>>>>> > > > >
>>>>>>> > > >
>>>>>>> > >
>>>>>>> >
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
when:

//Call the annotated method
      result = this.proceed(invocation);

org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext.getProceedOriginalReturnValue()
<-- the correct value is here, but is not used...



On Mon, Apr 23, 2018 at 10:25 AM, Luís Alves <lu...@gmail.com> wrote:

> well...I think the null is cause by the invocation order...since the cache
> is executed first I think it gets the return from the other interceptor
> which is null....nevertheless this is also a weird behavior, because I
> probably can't have the cache annotation mixed with other annotation, such
> as logging or other stuff, because the result will not be the expected one.
>
>
>
> On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com>
> wrote:
>
>> also with:
>>
>>  @CustomInterceptor
>>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
>>     public Location findLocationById(@CacheKey Integer locationId)
>>
>> my cache never get's populated....on org.jsr107.ri.annotations.Abst
>> ractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we have
>> this chunk of code:
>>
>> try {
>>       //Call the annotated method
>>       result = this.proceed(invocation); //this returns null even if find
>> returns a location....so I also suspect that's something wrong with the
>> delegation...
>>
>>       //Cache non-null result
>>       if (result != null) {
>>         cache.put(cacheKey, result);
>>       }
>>
>>       return result;
>>     }
>>
>>
>>
>>
>>
>> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> something in the DelegateManualInvocationHandler vs
>>> InterceptManualInvocationHandler....
>>>
>>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
>>> wrote:
>>>
>>>> Stack without the @CustomInterceptor:
>>>>
>>>>
>>>>
>>>> Stack with the  @CustomInterceptor:
>>>>
>>>>
>>>>
>>>> Can't understand the different behavior :( seem like there's a previous
>>>> lookup for @InterceptorBinding annotations...and since none was found it
>>>> has skipped the method...but the code tells otherwise...any idea?
>>>>
>>>>
>>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com>
>>>> wrote:
>>>>
>>>>> so far I think the *method*.getDeclaredAnnotations() when I don't
>>>>> have the @CustomInterceptor is the findBy instead of the
>>>>> findLocationById...but I can't understand why :(
>>>>> that's why no annotation it's on the list, but makes no sense. I'm
>>>>> going to try to figure out the behaviour with and without the
>>>>> @CustomInterceptor.
>>>>>
>>>>>
>>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
>>>>> andraschko.thomas@gmail.com> wrote:
>>>>>
>>>>>> do you mean that method.getDeclaredAnnotations does not return
>>>>>> CacheResult?
>>>>>>
>>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>>>
>>>>>> > Good morning,
>>>>>> >
>>>>>> > there's still something weird. Only works when I got the
>>>>>> @CustomInterceptor
>>>>>> > there.
>>>>>> >
>>>>>> >     @CacheResult(cacheName = "loc-cache")
>>>>>> >     @CustomInterceptor  //only seems to work when I have this
>>>>>> annotation
>>>>>> > here
>>>>>> >     public Location findLocationById(@CacheKey Integer locId)
>>>>>> >     {
>>>>>> >         //just a wrapper for caching...
>>>>>> >         return findBy(locId);
>>>>>> >     }
>>>>>> >
>>>>>> > I'm trying to understand from the trace why the @CacheResult is not
>>>>>> visible
>>>>>> > alone...
>>>>>> >
>>>>>> >  addInterceptorBindings(beanManager, bindings,
>>>>>> > method.getDeclaredAnnotations());  <--should see all the
>>>>>> annotation...
>>>>>> >
>>>>>> >
>>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>>> >
>>>>>> > > Would be great if you could create a issue + unittest, so i can
>>>>>> fix it
>>>>>> > next
>>>>>> > > week.
>>>>>> > >
>>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>> > >
>>>>>> > > > I have to leave :( don't do any change until I can confirm
>>>>>> everything
>>>>>> > ;(
>>>>>> > > >
>>>>>> > > > have a nice weekend.
>>>>>> > > >
>>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
>>>>>> luisalves00@gmail.com>
>>>>>> > > wrote:
>>>>>> > > >
>>>>>> > > > > well....I think we might have an issue with the proceed part:
>>>>>> > > > >
>>>>>> > > > >  try {
>>>>>> > > > >       //Call the annotated method
>>>>>> > > > >       result = this.proceed(invocation); <-- this is not
>>>>>> calling my
>>>>>> > > > > method...I think is because the invocation is
>>>>>> > > > org.apache.deltaspike.proxy.
>>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of
>>>>>> my
>>>>>> > method
>>>>>> > > :(
>>>>>> > > > >
>>>>>> > > > > any ideas?
>>>>>> > > > >
>>>>>> > > > >
>>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>>>>>> luisalves00@gmail.com>
>>>>>> > > > wrote:
>>>>>> > > > >
>>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>>>>>> > > > >>
>>>>>> > > > >> not sure the cache is actually working but I think it's not
>>>>>> related
>>>>>> > > with
>>>>>> > > > >> DS. If possible release a version with the fix:
>>>>>> > > > >>
>>>>>> > > > >> @ApplicationScoped
>>>>>> > > > >> @Specializes
>>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>>>>>> > > > >> InterceptorLookup
>>>>>> > > > >> {
>>>>>> > > > >>
>>>>>> > > > >>     @Override
>>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
>>>>>> beanManager,
>>>>>> > > > >> ArrayList<Annotation> bindings,
>>>>>> > > > >>             Annotation[] declaredAnnotations)
>>>>>> > > > >>     {
>>>>>> > > > >>         for (Annotation annotation : declaredAnnotations)
>>>>>> > > > >>         {
>>>>>> > > > >>             if (bindings.contains(annotation))
>>>>>> > > > >>             {
>>>>>> > > > >>                 continue;
>>>>>> > > > >>             }
>>>>>> > > > >>
>>>>>> > > > >>             Class<? extends Annotation> annotationType =
>>>>>> > > > >> annotation.annotationType();
>>>>>> > > > >>
>>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>>>>>> > annotationType))*
>>>>>> > > > >>             {
>>>>>> > > > >>                 bindings.add(annotation);
>>>>>> > > > >>             }
>>>>>> > > > >>
>>>>>> > > > >>             if (beanManager.isStereotype(annotationType))
>>>>>> *///fun
>>>>>> > > part
>>>>>> > > > >> is that here is well done ;)*
>>>>>> > > > >>             {
>>>>>> > > > >>                 for (Annotation subAnnotation :
>>>>>> > > > >> annotationType.getDeclaredAnnotations())
>>>>>> > > > >>                 {
>>>>>> > > > >>                     if (bindings.contains(subAnnotation))
>>>>>> > > > >>                     {
>>>>>> > > > >>                         continue;
>>>>>> > > > >>                     }
>>>>>> > > > >>
>>>>>> > > > >>                     if (subAnnotation.annotationType(
>>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>>>>>> > > > >>                     {
>>>>>> > > > >>                         bindings.add(subAnnotation);
>>>>>> > > > >>                     }
>>>>>> > > > >>                 }
>>>>>> > > > >>             }
>>>>>> > > > >>         }
>>>>>> > > > >>     }
>>>>>> > > > >>
>>>>>> > > > >> Thanks very much Thomas :)
>>>>>> > > > >>
>>>>>> > > > >>
>>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>>>>>> luisalves00@gmail.com>
>>>>>> > > > >> wrote:
>>>>>> > > > >>
>>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>>>>>> > > > >>>
>>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>>>>>> luisalves00@gmail.com
>>>>>> > >
>>>>>> > > > >>> wrote:
>>>>>> > > > >>>
>>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which
>>>>>> jar I
>>>>>> > > have
>>>>>> > > > >>>> to import?!
>>>>>> > > > >>>>
>>>>>> > > > >>>>
>>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>>>>>> > luisalves00@gmail.com>
>>>>>> > > > >>>> wrote:
>>>>>> > > > >>>>
>>>>>> > > > >>>>> I'll try....@Specializes on
>>>>>> CustomDeltaSpikeProxyIntercept
>>>>>> > orLookup
>>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
>>>>>> trick.
>>>>>> > > > >>>>>
>>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>>>>>> > > > >>>>>
>>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
>>>>>> /2.0/javax/enterprise/inject/s
>>>>>> > > > >>>>>> pi/BeanManager.html#isIntercep
>>>>>> torBinding-java.lang.Class-
>>>>>> > > > >>>>>>
>>>>>> > > > >>>>>> Would be great if you can test it, create a issue and
>>>>>> provide a
>>>>>> > > > patch.
>>>>>> > > > >>>>>>
>>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>> > > > >>>>>>
>>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>>>>>> expert
>>>>>> > on
>>>>>> > > > the
>>>>>> > > > >>>>>> mailing
>>>>>> > > > >>>>>> > list that want to help? ;)
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
>>>>>> /7/api/javax/enterprise/inject
>>>>>> > > /spi/
>>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>>>>>> terceptorBinding-javax.enterpr
>>>>>> > > > >>>>>> ise.inject.spi
>>>>>> > > > >>>>>> > .
>>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>>>> > > > >>>>>> (annotationType.
>>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we
>>>>>> need some
>>>>>> > > > >>>>>> runtime way
>>>>>> > > > >>>>>> > to check it...
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> > BTW if a solutions is found can you make it available
>>>>>> on
>>>>>> > 1.8.2?
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>>>>>> lob/master/cache-annotations-
>>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
>>>>>> c/main/java/org/jsr107/ri/
>>>>>> > anno
>>>>>> > > > >>>>>> tations/cdi/
>>>>>> > > > >>>>>> > > InterceptorExtension.java
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> > > Just check our code here:
>>>>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
>>>>>> rc/main/java/org/apache/
>>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>>>>>> > DeltaSpikeProxyInterceptorLo
>>>>>> > > ok
>>>>>> > > > >>>>>> > up.java#L90
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>>>>>> > > interceptor
>>>>>> > > > >>>>>> binding
>>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then
>>>>>> your
>>>>>> > case
>>>>>> > > > >>>>>> should
>>>>>> > > > >>>>>> > work.
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>>>>>> > luisalves00@gmail.com
>>>>>> > > >:
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> > > > This is the reference implementation of the
>>>>>> interceptors:
>>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
>>>>>> > > > >>>>>> > > > They have:
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>>>>>> > 2001/XMLSchema-instance
>>>>>> > > "
>>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>>>> > > > >>>>>> > > >     <interceptors>
>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
>>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>> > > > >>>>>> > CachePutInterceptor</class>
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>>> > > ns.cdi.CacheRemoveEntryInterce
>>>>>> > > > >>>>>> ptor</
>>>>>> > > > >>>>>> > class>
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>>> > > ns.cdi.CacheRemoveAllIntercept
>>>>>> > > > >>>>>> or</class>
>>>>>> > > > >>>>>> > > >     </interceptors>
>>>>>> > > > >>>>>> > > > </beans>
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > and they have 2files with:
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > and
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>>>>> CdiAnnotationProviderImpl
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko
>>>>>> <
>>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with
>>>>>> CDI:
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
>>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > > We only support 1) currently.
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult
>>>>>> will work
>>>>>> > > even
>>>>>> > > > a
>>>>>> > > > >>>>>> normal
>>>>>> > > > >>>>>> > > CDI
>>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>>>>>> > "normal"
>>>>>> > > > CDI
>>>>>> > > > >>>>>> way.
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>>>>>> > > > luisalves00@gmail.com
>>>>>> > > > >>>>>> >:
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>>>>>> > > > jsr107spec/issues/401
>>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
>>>>>> DS...:(
>>>>>> > > > >>>>>> > > > > >
>>>>>> > > > >>>>>> > > > > >
>>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>>>> > > > >>>>>> luisalves00@gmail.com
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> > > > > wrote:
>>>>>> > > > >>>>>> > > > > >
>>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > Red Hat
>>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
>>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
>>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>>>> > > > >>>>>> > > > > > >  */
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>>>>>> > > > >>>>>> > > > > > > @Documented
>>>>>> > > > >>>>>> > > > > > > @NormalScope
>>>>>> > > > >>>>>> > > > > > > @Inherited
>>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > }
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for
>>>>>> the
>>>>>> > > > >>>>>> interceptors? Can
>>>>>> > > > >>>>>> > > you
>>>>>> > > > >>>>>> > > > > > point
>>>>>> > > > >>>>>> > > > > > > me out the code?
>>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations
>>>>>> even if
>>>>>> > > they
>>>>>> > > > >>>>>> don't
>>>>>> > > > >>>>>> > have
>>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>>>>>> registered
>>>>>> > > > >>>>>> > interceptors?
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>>>> > > > >>>>>> > luisalves00@gmail.com
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > > > > > wrote:
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>>>>>> Andraschko
>>>>>> > <
>>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
>>>>>> binding.
>>>>>> > > > >>>>>> CacheResult is
>>>>>> > > > >>>>>> > > > > actually
>>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at
>>>>>> the
>>>>>> > cache
>>>>>> > > > API
>>>>>> > > > >>>>>> ;)
>>>>>> > > > >>>>>> > > > > > >>>
>>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
>>>>>> available (
>>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi),
>>>>>> i'm not
>>>>>> > > > sure
>>>>>> > > > >>>>>> if this
>>>>>> > > > >>>>>> > > > would
>>>>>> > > > >>>>>> > > > > > >>> work
>>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
>>>>>> interceptors to
>>>>>> > > > partial
>>>>>> > > > >>>>>> beans.
>>>>>> > > > >>>>>> > > > > > >>>
>>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
>>>>>> create a
>>>>>> > own
>>>>>> > > > >>>>>> binding.
>>>>>> > > > >>>>>> > > > > > >>>
>>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>>>> > > > >>>>>> luisalves00@gmail.com>:
>>>>>> > > > >>>>>> > > > > > >>>
>>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
>>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that
>>>>>> annotation we get
>>>>>> > > the
>>>>>> > > > >>>>>> > > interceptor
>>>>>> > > > >>>>>> > > > to
>>>>>> > > > >>>>>> > > > > > >>> work?
>>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>>>>>> myself....as I
>>>>>> > > said
>>>>>> > > > >>>>>> I cannot
>>>>>> > > > >>>>>> > > > > modify
>>>>>> > > > >>>>>> > > > > > >>> the
>>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>>>>>> > > Andraschko <
>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>>>>>> > internally
>>>>>> > > > >>>>>> CacheResult
>>>>>> > > > >>>>>> > > > works
>>>>>> > > > >>>>>> > > > > > >>> but our
>>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>>>>>> interceptors
>>>>>> > by
>>>>>> > > a
>>>>>> > > > >>>>>> binding
>>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>>>> > > > >>>>>> (@Interceptors,
>>>>>> > > > >>>>>> > > > > > @Intercepted,
>>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>>>>>> Andraschko <
>>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > > >:
>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>>>>>> > > interceptorbinding.
>>>>>> > > > >>>>>> Do you
>>>>>> > > > >>>>>> > > mean
>>>>>> > > > >>>>>> > > > > that
>>>>>> > > > >>>>>> > > > > > >>> it
>>>>>> > > > >>>>>> > > > > > >>> > does
>>>>>> > > > >>>>>> > > > > > >>> > > > work without?
>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb
>>>>>> Luís
>>>>>> > Alves
>>>>>> > > :
>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>>>>>> > > > >>>>>> @InterceptorBinding?
>>>>>> > > > >>>>>> > > and
>>>>>> > > > >>>>>> > > > > > check
>>>>>> > > > >>>>>> > > > > > >>> if
>>>>>> > > > >>>>>> > > > > > >>> > it
>>>>>> > > > >>>>>> > > > > > >>> > > >> works?
>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult
>>>>>> is
>>>>>> > > > standard
>>>>>> > > > >>>>>> so I
>>>>>> > > > >>>>>> > > don't
>>>>>> > > > >>>>>> > > > > want
>>>>>> > > > >>>>>> > > > > > >>> to
>>>>>> > > > >>>>>> > > > > > >>> > > extend
>>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
>>>>>> @InterceptorBinding.....if
>>>>>> > > this
>>>>>> > > > >>>>>> is really
>>>>>> > > > >>>>>> > > the
>>>>>> > > > >>>>>> > > > > > >>> problem.
>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM,
>>>>>> Luís
>>>>>> > Alves <
>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface
>>>>>> CustomInterceptor
>>>>>> > > > >>>>>> > > > > > >>> > > >> > {
>>>>>> > > > >>>>>> > > > > > >>> > > >> > }
>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>>>>>> > > @InterceptorBinding....but
>>>>>> > > > >>>>>> not 100%
>>>>>> > > > >>>>>> > > > > > >>> sure....what
>>>>>> > > > >>>>>> > > > > > >>> > is
>>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM,
>>>>>> Luís
>>>>>> > > Alves <
>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your
>>>>>> tests
>>>>>> > with
>>>>>> > > > the
>>>>>> > > > >>>>>> > > > @CacheResult
>>>>>> > > > >>>>>> > > > > > >>> > > interceptor
>>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
>>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57
>>>>>> PM, Thomas
>>>>>> > > > >>>>>> Andraschko <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com>
>>>>>> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
>>>>>> interceptor is
>>>>>> > > really
>>>>>> > > > >>>>>> called
>>>>>> > > > >>>>>> > ;)
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
>>>>>> Alves <
>>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> >:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>>>>>> > > declaration
>>>>>> > > > >>>>>> of the
>>>>>> > > > >>>>>> > > > > > interceptor
>>>>>> > > > >>>>>> > > > > > >>> for
>>>>>> > > > >>>>>> > > > > > >>> > > the
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>>>>>> > called....SO
>>>>>> > > it
>>>>>> > > > >>>>>> should
>>>>>> > > > >>>>>> > > work
>>>>>> > > > >>>>>> > > > > for
>>>>>> > > > >>>>>> > > > > > >>> the
>>>>>> > > > >>>>>> > > > > > >>> > > cache
>>>>>> > > > >>>>>> > > > > > >>> > > >> as
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43
>>>>>> PM,
>>>>>> > Luís
>>>>>> > > > >>>>>> Alves <
>>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom
>>>>>> one (in
>>>>>> > fact
>>>>>> > > > is
>>>>>> > > > >>>>>> a
>>>>>> > > > >>>>>> > "copy"
>>>>>> > > > >>>>>> > > of
>>>>>> > > > >>>>>> > > > > > yours
>>>>>> > > > >>>>>> > > > > > >>> > that
>>>>>> > > > >>>>>> > > > > > >>> > > >> logs
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>>>>>> CustomInterceptorImpl
>>>>>> > > > >>>>>> implements
>>>>>> > > > >>>>>> > > > > > Serializable
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final
>>>>>> long
>>>>>> > > > >>>>>> serialVersionUID =
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>>>> > > > >>>>>> interceptIt(InvocationContext
>>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>>>> > > > >>>>>> > CustomInterceptorImpl
>>>>>> > > > >>>>>> > > > was
>>>>>> > > > >>>>>> > > > > > >>> > called");
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>>>>>> > > > >>>>>> invocationContext.proceed();
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml
>>>>>> (for
>>>>>> > > > service
>>>>>> > > > >>>>>> and
>>>>>> > > > >>>>>> > repo
>>>>>> > > > >>>>>> > > > > > layers):
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>>>>>> > > encoding="UTF-8"?>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>>>>>> > > http://java.sun.com/xml
>>>>>> > > > >>>>>> /ns/javaee
>>>>>> > > > >>>>>> > "
>>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> http://www.w3.org/2001/XMLSche
>>>>>> > > > >>>>>> ma-instance"
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>  xsi:schemaLocation="http://
>>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> http://java.sun.com/xml/ns/jav
>>>>>> > > > >>>>>> aee/beans_1_0.xsd
>>>>>> > > > >>>>>> > ">
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> >  <class>org.jsr107.ri.annotati
>>>>>> > > > >>>>>> ons.cdi.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> CacheResultInterceptor</class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>>  <class>eu.gls.ddtm.config.
>>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service
>>>>>> layer
>>>>>> > but
>>>>>> > > > not
>>>>>> > > > >>>>>> on the
>>>>>> > > > >>>>>> > > > > > >>> @Repository :(
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
>>>>>> > 1.x)...
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
>>>>>> 11:50 AM,
>>>>>> > > > Thomas
>>>>>> > > > >>>>>> > > Andraschko
>>>>>> > > > >>>>>> > > > <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com
>>>>>> >
>>>>>> > wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>>>>>> > > interceptor
>>>>>> > > > >>>>>> and check
>>>>>> > > > >>>>>> > > if
>>>>>> > > > >>>>>> > > > > it's
>>>>>> > > > >>>>>> > > > > > >>> > > invoked?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>>>>>> > > > weld-2.0.0.Final
>>>>>> > > > >>>>>> or
>>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>>>> > > > >>>>>> > > > > > >>> > > >> have a
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the
>>>>>> unit
>>>>>> > test
>>>>>> > > as
>>>>>> > > > >>>>>> there is
>>>>>> > > > >>>>>> > > > > > something
>>>>>> > > > >>>>>> > > > > > >>> > > broken,
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i
>>>>>> posted
>>>>>> > > before.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
>>>>>> great if
>>>>>> > you
>>>>>> > > > >>>>>> could
>>>>>> > > > >>>>>> > > provide a
>>>>>> > > > >>>>>> > > > > > >>> unittest
>>>>>> > > > >>>>>> > > > > > >>> > > for
>>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
>>>>>> prepare it by
>>>>>> > > > >>>>>> myself.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00
>>>>>> Luís
>>>>>> > > Alves
>>>>>> > > > <
>>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > >:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>>>>>> success...@CacheResult
>>>>>> > > on
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>>>>>> > > SomeRepository
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S
>>>>>> not sure
>>>>>> > > > what
>>>>>> > > > >>>>>> I'm
>>>>>> > > > >>>>>> > doing
>>>>>> > > > >>>>>> > > > > > wrong.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at
>>>>>> 11:03
>>>>>> > AM,
>>>>>> > > > >>>>>> Luís Alves
>>>>>> > > > >>>>>> > <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>>>>>> > > CustomBaseRepository
>>>>>> > > > >>>>>> for
>>>>>> > > > >>>>>> > > > now...but
>>>>>> > > > >>>>>> > > > > > >>> still
>>>>>> > > > >>>>>> > > > > > >>> > > can't
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
>>>>>> work...here is
>>>>>> > my
>>>>>> > > > >>>>>> beans.xml:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>>>> > > > >>>>>> encoding="UTF-8"?>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>>>>>> > > > http://java.sun.com/
>>>>>> > > > >>>>>> > > > xml/ns/javaee"
>>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > http://www.w3.org/2001/XMLSche
>>>>>> > > > >>>>>> ma-instance"
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> >  xsi:schemaLocation="http://
>>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> http://java.sun.com/xml/ns/
>>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>>>>>> > > > >>>>>> > > > > ">
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>  <class>org.jsr107.ri.
>>>>>> > > > >>>>>> > > annotations.cdi.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> CacheResultInterceptor</class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>  <class>org.jsr107.ri.
>>>>>> > > > >>>>>> > > annotations.cdi.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> CacheRemoveEntryInterceptor</
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018
>>>>>> at 10:45
>>>>>> > > AM,
>>>>>> > > > >>>>>> Luís
>>>>>> > > > >>>>>> > Alves
>>>>>> > > > >>>>>> > > <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
>>>>>> correctly if
>>>>>> > > they
>>>>>> > > > >>>>>> are on
>>>>>> > > > >>>>>> > the
>>>>>> > > > >>>>>> > > > > > >>> bean.xml
>>>>>> > > > >>>>>> > > > > > >>> > they
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated
>>>>>> one don't
>>>>>> > > > work.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why
>>>>>> I
>>>>>> > didn't
>>>>>> > > > had
>>>>>> > > > >>>>>> it
>>>>>> > > > >>>>>> > > before)
>>>>>> > > > >>>>>> > > > > > >>> getting:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > org.apache.deltaspike.data.imp
>>>>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation
>>>>>> for class
>>>>>> > > > class
>>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a
>>>>>> valid
>>>>>> > > Entity? I
>>>>>> > > > >>>>>> got this
>>>>>> > > > >>>>>> > > > base
>>>>>> > > > >>>>>> > > > > > >>> class
>>>>>> > > > >>>>>> > > > > > >>> > for
>>>>>> > > > >>>>>> > > > > > >>> > > >> some
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
>>>>>> behavior:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>>>> > > > >>>>>> CustomBaseRepository
>>>>>> > > > >>>>>> > > <E
>>>>>> > > > >>>>>> > > > > > >>> extends
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>>>> > > > >>>>>> > AbstractEntityRepository<E,
>>>>>> > > > >>>>>> > > K>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>>>>>> inheritance
>>>>>> > is
>>>>>> > > > >>>>>> supposed
>>>>>> > > > >>>>>> > to
>>>>>> > > > >>>>>> > > > work
>>>>>> > > > >>>>>> > > > > > >>> with
>>>>>> > > > >>>>>> > > > > > >>> > the
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018
>>>>>> at 10:23
>>>>>> > > AM,
>>>>>> > > > >>>>>> Thomas
>>>>>> > > > >>>>>> > > > > > Andraschko
>>>>>> > > > >>>>>> > > > > > >>> <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> andraschko.thomas@gmail.com>
>>>>>> > > > >>>>>> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > https://github.com/apache/delt
>>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > modules/partial-bean/impl/src/
>>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> e/test/core/api/partialbean/
>>>>>> > > > uc008
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>>>>>> GMT+02:00
>>>>>> > > > Thomas
>>>>>> > > > >>>>>> > > Andraschko
>>>>>> > > > >>>>>> > > > <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> andraschko.thomas@gmail.com
>>>>>> > >:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>>>>>> generell
>>>>>> > > > should
>>>>>> > > > >>>>>> be
>>>>>> > > > >>>>>> > > > supported
>>>>>> > > > >>>>>> > > > > > but
>>>>>> > > > >>>>>> > > > > > >>> only
>>>>>> > > > >>>>>> > > > > > >>> > > via
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
>>>>>> "@Interceptors,
>>>>>> > > > >>>>>> @Intercepted
>>>>>> > > > >>>>>> > and
>>>>>> > > > >>>>>> > > > > > >>> @Decorator"
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>>>>>> GMT+02:00
>>>>>> > > > Luís
>>>>>> > > > >>>>>> Alves <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found
>>>>>> that
>>>>>> > > > >>>>>> @Repository is
>>>>>> > > > >>>>>> > > > actually
>>>>>> > > > >>>>>> > > > > a
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently
>>>>>> CDI
>>>>>> > > > >>>>>> Interceptors
>>>>>> > > > >>>>>> > > applied
>>>>>> > > > >>>>>> > > > > via
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator
>>>>>> are not
>>>>>> > > > >>>>>> supported by
>>>>>> > > > >>>>>> > our
>>>>>> > > > >>>>>> > > > > > proxies!
>>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20,
>>>>>> 2018 at
>>>>>> > > 10:11
>>>>>> > > > >>>>>> AM, Luís
>>>>>> > > > >>>>>> > > > > Alves <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>>>>>> > > > @ApplicationScoped
>>>>>> > > > >>>>>> the
>>>>>> > > > >>>>>> > > > > interceptor
>>>>>> > > > >>>>>> > > > > > >>> is
>>>>>> > > > >>>>>> > > > > > >>> > not
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>>>>>> why...can't
>>>>>> > > > >>>>>> @Repository
>>>>>> > > > >>>>>> > > > methods
>>>>>> > > > >>>>>> > > > > > be
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20,
>>>>>> 2018 at
>>>>>> > > > 9:53
>>>>>> > > > >>>>>> AM,
>>>>>> > > > >>>>>> > Luís
>>>>>> > > > >>>>>> > > > > Alves
>>>>>> > > > >>>>>> > > > > > <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>>>>>> > proxied...it
>>>>>> > > > >>>>>> should be
>>>>>> > > > >>>>>> > > > OK...I
>>>>>> > > > >>>>>> > > > > > >>> guess
>>>>>> > > > >>>>>> > > > > > >>> > it's
>>>>>> > > > >>>>>> > > > > > >>> > > >> like
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr
>>>>>> 20, 2018
>>>>>> > at
>>>>>> > > > >>>>>> 9:44 AM,
>>>>>> > > > >>>>>> > Luís
>>>>>> > > > >>>>>> > > > > > Alves <
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
>>>>>> > > @Dependent
>>>>>> > > > >>>>>> > > scoped...and
>>>>>> > > > >>>>>> > > > > > seems
>>>>>> > > > >>>>>> > > > > > >>> > that
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors,
>>>>>> so
>>>>>> > > > >>>>>> > > > @CacheResult(cacheName
>>>>>> > > > >>>>>> > > > > =
>>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember
>>>>>> that some
>>>>>> > > one
>>>>>> > > > >>>>>> proposed
>>>>>> > > > >>>>>> > > that
>>>>>> > > > >>>>>> > > > > > >>> > @Repository
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > @ApplicationScoped...if
>>>>>> > > > I
>>>>>> > > > >>>>>> change
>>>>>> > > > >>>>>> > > them
>>>>>> > > > >>>>>> > > > > do
>>>>>> > > > >>>>>> > > > > > I
>>>>>> > > > >>>>>> > > > > > >>> have
>>>>>> > > > >>>>>> > > > > > >>> > > to
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>>>>>> > producer
>>>>>> > > is
>>>>>> > > > >>>>>> the
>>>>>> > > > >>>>>> > > > following:
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>>  @RequestScoped
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>>>>>> > > EntityManager
>>>>>> > > > >>>>>> get()
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>>>>> > > > >>>>>> entityManager;
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose
>>>>>> I'll have a
>>>>>> > > > >>>>>> different EM
>>>>>> > > > >>>>>> > > for
>>>>>> > > > >>>>>> > > > > > each
>>>>>> > > > >>>>>> > > > > > >>> HTTP
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
>>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>>> > > > >>>>>> > > > > > >>> > >
>>>>>> > > > >>>>>> > > > > > >>> >
>>>>>> > > > >>>>>> > > > > > >>>
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >>
>>>>>> > > > >>>>>> > > > > > >
>>>>>> > > > >>>>>> > > > > >
>>>>>> > > > >>>>>> > > > >
>>>>>> > > > >>>>>> > > >
>>>>>> > > > >>>>>> > >
>>>>>> > > > >>>>>> >
>>>>>> > > > >>>>>>
>>>>>> > > > >>>>>
>>>>>> > > > >>>>>
>>>>>> > > > >>>>
>>>>>> > > > >>>
>>>>>> > > > >>
>>>>>> > > > >
>>>>>> > > >
>>>>>> > >
>>>>>> >
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
well...I think the null is cause by the invocation order...since the cache
is executed first I think it gets the return from the other interceptor
which is null....nevertheless this is also a weird behavior, because I
probably can't have the cache annotation mixed with other annotation, such
as logging or other stuff, because the result will not be the expected one.



On Mon, Apr 23, 2018 at 10:05 AM, Luís Alves <lu...@gmail.com> wrote:

> also with:
>
>  @CustomInterceptor
>     @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
>     public Location findLocationById(@CacheKey Integer locationId)
>
> my cache never get's populated....on org.jsr107.ri.annotations.
> AbstractCacheResultInterceptor.cacheResult(CacheContextSource<I>, I) we
> have this chunk of code:
>
> try {
>       //Call the annotated method
>       result = this.proceed(invocation); //this returns null even if find
> returns a location....so I also suspect that's something wrong with the
> delegation...
>
>       //Cache non-null result
>       if (result != null) {
>         cache.put(cacheKey, result);
>       }
>
>       return result;
>     }
>
>
>
>
>
> On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com> wrote:
>
>> something in the DelegateManualInvocationHandler vs
>> InterceptManualInvocationHandler....
>>
>> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> Stack without the @CustomInterceptor:
>>>
>>>
>>>
>>> Stack with the  @CustomInterceptor:
>>>
>>>
>>>
>>> Can't understand the different behavior :( seem like there's a previous
>>> lookup for @InterceptorBinding annotations...and since none was found it
>>> has skipped the method...but the code tells otherwise...any idea?
>>>
>>>
>>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com>
>>> wrote:
>>>
>>>> so far I think the *method*.getDeclaredAnnotations() when I don't have
>>>> the @CustomInterceptor is the findBy instead of the findLocationById...but
>>>> I can't understand why :(
>>>> that's why no annotation it's on the list, but makes no sense. I'm
>>>> going to try to figure out the behaviour with and without the
>>>> @CustomInterceptor.
>>>>
>>>>
>>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
>>>> andraschko.thomas@gmail.com> wrote:
>>>>
>>>>> do you mean that method.getDeclaredAnnotations does not return
>>>>> CacheResult?
>>>>>
>>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>>
>>>>> > Good morning,
>>>>> >
>>>>> > there's still something weird. Only works when I got the
>>>>> @CustomInterceptor
>>>>> > there.
>>>>> >
>>>>> >     @CacheResult(cacheName = "loc-cache")
>>>>> >     @CustomInterceptor  //only seems to work when I have this
>>>>> annotation
>>>>> > here
>>>>> >     public Location findLocationById(@CacheKey Integer locId)
>>>>> >     {
>>>>> >         //just a wrapper for caching...
>>>>> >         return findBy(locId);
>>>>> >     }
>>>>> >
>>>>> > I'm trying to understand from the trace why the @CacheResult is not
>>>>> visible
>>>>> > alone...
>>>>> >
>>>>> >  addInterceptorBindings(beanManager, bindings,
>>>>> > method.getDeclaredAnnotations());  <--should see all the
>>>>> annotation...
>>>>> >
>>>>> >
>>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>> >
>>>>> > > Would be great if you could create a issue + unittest, so i can
>>>>> fix it
>>>>> > next
>>>>> > > week.
>>>>> > >
>>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>> > >
>>>>> > > > I have to leave :( don't do any change until I can confirm
>>>>> everything
>>>>> > ;(
>>>>> > > >
>>>>> > > > have a nice weekend.
>>>>> > > >
>>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
>>>>> luisalves00@gmail.com>
>>>>> > > wrote:
>>>>> > > >
>>>>> > > > > well....I think we might have an issue with the proceed part:
>>>>> > > > >
>>>>> > > > >  try {
>>>>> > > > >       //Call the annotated method
>>>>> > > > >       result = this.proceed(invocation); <-- this is not
>>>>> calling my
>>>>> > > > > method...I think is because the invocation is
>>>>> > > > org.apache.deltaspike.proxy.
>>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
>>>>> > method
>>>>> > > :(
>>>>> > > > >
>>>>> > > > > any ideas?
>>>>> > > > >
>>>>> > > > >
>>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>>>>> luisalves00@gmail.com>
>>>>> > > > wrote:
>>>>> > > > >
>>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>>>>> > > > >>
>>>>> > > > >> not sure the cache is actually working but I think it's not
>>>>> related
>>>>> > > with
>>>>> > > > >> DS. If possible release a version with the fix:
>>>>> > > > >>
>>>>> > > > >> @ApplicationScoped
>>>>> > > > >> @Specializes
>>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>>>>> > > > >> InterceptorLookup
>>>>> > > > >> {
>>>>> > > > >>
>>>>> > > > >>     @Override
>>>>> > > > >>     protected void addInterceptorBindings(BeanManager
>>>>> beanManager,
>>>>> > > > >> ArrayList<Annotation> bindings,
>>>>> > > > >>             Annotation[] declaredAnnotations)
>>>>> > > > >>     {
>>>>> > > > >>         for (Annotation annotation : declaredAnnotations)
>>>>> > > > >>         {
>>>>> > > > >>             if (bindings.contains(annotation))
>>>>> > > > >>             {
>>>>> > > > >>                 continue;
>>>>> > > > >>             }
>>>>> > > > >>
>>>>> > > > >>             Class<? extends Annotation> annotationType =
>>>>> > > > >> annotation.annotationType();
>>>>> > > > >>
>>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>>>>> > annotationType))*
>>>>> > > > >>             {
>>>>> > > > >>                 bindings.add(annotation);
>>>>> > > > >>             }
>>>>> > > > >>
>>>>> > > > >>             if (beanManager.isStereotype(annotationType))
>>>>> *///fun
>>>>> > > part
>>>>> > > > >> is that here is well done ;)*
>>>>> > > > >>             {
>>>>> > > > >>                 for (Annotation subAnnotation :
>>>>> > > > >> annotationType.getDeclaredAnnotations())
>>>>> > > > >>                 {
>>>>> > > > >>                     if (bindings.contains(subAnnotation))
>>>>> > > > >>                     {
>>>>> > > > >>                         continue;
>>>>> > > > >>                     }
>>>>> > > > >>
>>>>> > > > >>                     if (subAnnotation.annotationType(
>>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>>>>> > > > >>                     {
>>>>> > > > >>                         bindings.add(subAnnotation);
>>>>> > > > >>                     }
>>>>> > > > >>                 }
>>>>> > > > >>             }
>>>>> > > > >>         }
>>>>> > > > >>     }
>>>>> > > > >>
>>>>> > > > >> Thanks very much Thomas :)
>>>>> > > > >>
>>>>> > > > >>
>>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>>>>> luisalves00@gmail.com>
>>>>> > > > >> wrote:
>>>>> > > > >>
>>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>>>>> > > > >>>
>>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>>>>> luisalves00@gmail.com
>>>>> > >
>>>>> > > > >>> wrote:
>>>>> > > > >>>
>>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which
>>>>> jar I
>>>>> > > have
>>>>> > > > >>>> to import?!
>>>>> > > > >>>>
>>>>> > > > >>>>
>>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>>>>> > luisalves00@gmail.com>
>>>>> > > > >>>> wrote:
>>>>> > > > >>>>
>>>>> > > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
>>>>> > orLookup
>>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
>>>>> trick.
>>>>> > > > >>>>>
>>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>>>>> > > > >>>>>
>>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
>>>>> /2.0/javax/enterprise/inject/s
>>>>> > > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>>> > > > >>>>>>
>>>>> > > > >>>>>> Would be great if you can test it, create a issue and
>>>>> provide a
>>>>> > > > patch.
>>>>> > > > >>>>>>
>>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>> > > > >>>>>>
>>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>>>>> expert
>>>>> > on
>>>>> > > > the
>>>>> > > > >>>>>> mailing
>>>>> > > > >>>>>> > list that want to help? ;)
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> > https://docs.oracle.com/javaee
>>>>> /7/api/javax/enterprise/inject
>>>>> > > /spi/
>>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>>>>> terceptorBinding-javax.enterpr
>>>>> > > > >>>>>> ise.inject.spi
>>>>> > > > >>>>>> > .
>>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>>> > > > >>>>>> (annotationType.
>>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we
>>>>> need some
>>>>> > > > >>>>>> runtime way
>>>>> > > > >>>>>> > to check it...
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> > BTW if a solutions is found can you make it available on
>>>>> > 1.8.2?
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>>>>> lob/master/cache-annotations-
>>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
>>>>> c/main/java/org/jsr107/ri/
>>>>> > anno
>>>>> > > > >>>>>> tations/cdi/
>>>>> > > > >>>>>> > > InterceptorExtension.java
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> > > Just check our code here:
>>>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/s
>>>>> rc/main/java/org/apache/
>>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>>>>> > DeltaSpikeProxyInterceptorLo
>>>>> > > ok
>>>>> > > > >>>>>> > up.java#L90
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>>>>> > > interceptor
>>>>> > > > >>>>>> binding
>>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then
>>>>> your
>>>>> > case
>>>>> > > > >>>>>> should
>>>>> > > > >>>>>> > work.
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>>>>> > luisalves00@gmail.com
>>>>> > > >:
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> > > > This is the reference implementation of the
>>>>> interceptors:
>>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
>>>>> > > > >>>>>> > > > They have:
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>>>>> > 2001/XMLSchema-instance
>>>>> > > "
>>>>> > > > >>>>>> > > >        xsi:schemaLocation="
>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>>> > > > >>>>>> > > >     <interceptors>
>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
>>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>> > > > >>>>>> > CachePutInterceptor</class>
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>> > > ns.cdi.CacheRemoveEntryInterce
>>>>> > > > >>>>>> ptor</
>>>>> > > > >>>>>> > class>
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>>> > > ns.cdi.CacheRemoveAllIntercept
>>>>> > > > >>>>>> or</class>
>>>>> > > > >>>>>> > > >     </interceptors>
>>>>> > > > >>>>>> > > > </beans>
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > and they have 2files with:
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > and
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>>>> CdiAnnotationProviderImpl
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
>>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > > We only support 1) currently.
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult will
>>>>> work
>>>>> > > even
>>>>> > > > a
>>>>> > > > >>>>>> normal
>>>>> > > > >>>>>> > > CDI
>>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>>>>> > "normal"
>>>>> > > > CDI
>>>>> > > > >>>>>> way.
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>>>>> > > > luisalves00@gmail.com
>>>>> > > > >>>>>> >:
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>>>>> > > > jsr107spec/issues/401
>>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
>>>>> DS...:(
>>>>> > > > >>>>>> > > > > >
>>>>> > > > >>>>>> > > > > >
>>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>>> > > > >>>>>> luisalves00@gmail.com
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> > > > > wrote:
>>>>> > > > >>>>>> > > > > >
>>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > Red Hat
>>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >  * @author Gavin King
>>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
>>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>>> > > > >>>>>> > > > > > >  */
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>>>>> > > > >>>>>> > > > > > > @Documented
>>>>> > > > >>>>>> > > > > > > @NormalScope
>>>>> > > > >>>>>> > > > > > > @Inherited
>>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > }
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for the
>>>>> > > > >>>>>> interceptors? Can
>>>>> > > > >>>>>> > > you
>>>>> > > > >>>>>> > > > > > point
>>>>> > > > >>>>>> > > > > > > me out the code?
>>>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations
>>>>> even if
>>>>> > > they
>>>>> > > > >>>>>> don't
>>>>> > > > >>>>>> > have
>>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>>>>> registered
>>>>> > > > >>>>>> > interceptors?
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>>> > > > >>>>>> > luisalves00@gmail.com
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > > > > > wrote:
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>>>>> Andraschko
>>>>> > <
>>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
>>>>> binding.
>>>>> > > > >>>>>> CacheResult is
>>>>> > > > >>>>>> > > > > actually
>>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at
>>>>> the
>>>>> > cache
>>>>> > > > API
>>>>> > > > >>>>>> ;)
>>>>> > > > >>>>>> > > > > > >>>
>>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
>>>>> available (
>>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi),
>>>>> i'm not
>>>>> > > > sure
>>>>> > > > >>>>>> if this
>>>>> > > > >>>>>> > > > would
>>>>> > > > >>>>>> > > > > > >>> work
>>>>> > > > >>>>>> > > > > > >>> with the limited ability to add
>>>>> interceptors to
>>>>> > > > partial
>>>>> > > > >>>>>> beans.
>>>>> > > > >>>>>> > > > > > >>>
>>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
>>>>> create a
>>>>> > own
>>>>> > > > >>>>>> binding.
>>>>> > > > >>>>>> > > > > > >>>
>>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>>> > > > >>>>>> luisalves00@gmail.com>:
>>>>> > > > >>>>>> > > > > > >>>
>>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
>>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> > is there a way that using that annotation
>>>>> we get
>>>>> > > the
>>>>> > > > >>>>>> > > interceptor
>>>>> > > > >>>>>> > > > to
>>>>> > > > >>>>>> > > > > > >>> work?
>>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>>>>> myself....as I
>>>>> > > said
>>>>> > > > >>>>>> I cannot
>>>>> > > > >>>>>> > > > > modify
>>>>> > > > >>>>>> > > > > > >>> the
>>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>>>>> > > Andraschko <
>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>>>>> > internally
>>>>> > > > >>>>>> CacheResult
>>>>> > > > >>>>>> > > > works
>>>>> > > > >>>>>> > > > > > >>> but our
>>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>>>>> interceptors
>>>>> > by
>>>>> > > a
>>>>> > > > >>>>>> binding
>>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>>> > > > >>>>>> (@Interceptors,
>>>>> > > > >>>>>> > > > > > @Intercepted,
>>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>>> > > > >>>>>> > > > > > >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>>>>> Andraschko <
>>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > > >:
>>>>> > > > >>>>>> > > > > > >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>>>>> > > interceptorbinding.
>>>>> > > > >>>>>> Do you
>>>>> > > > >>>>>> > > mean
>>>>> > > > >>>>>> > > > > that
>>>>> > > > >>>>>> > > > > > >>> it
>>>>> > > > >>>>>> > > > > > >>> > does
>>>>> > > > >>>>>> > > > > > >>> > > > work without?
>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb
>>>>> Luís
>>>>> > Alves
>>>>> > > :
>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>>>>> > > > >>>>>> @InterceptorBinding?
>>>>> > > > >>>>>> > > and
>>>>> > > > >>>>>> > > > > > check
>>>>> > > > >>>>>> > > > > > >>> if
>>>>> > > > >>>>>> > > > > > >>> > it
>>>>> > > > >>>>>> > > > > > >>> > > >> works?
>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult
>>>>> is
>>>>> > > > standard
>>>>> > > > >>>>>> so I
>>>>> > > > >>>>>> > > don't
>>>>> > > > >>>>>> > > > > want
>>>>> > > > >>>>>> > > > > > >>> to
>>>>> > > > >>>>>> > > > > > >>> > > extend
>>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
>>>>> @InterceptorBinding.....if
>>>>> > > this
>>>>> > > > >>>>>> is really
>>>>> > > > >>>>>> > > the
>>>>> > > > >>>>>> > > > > > >>> problem.
>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
>>>>> > Alves <
>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>>>> > > > >>>>>> > > > > > >>> > > >> > {
>>>>> > > > >>>>>> > > > > > >>> > > >> > }
>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>>>>> > > @InterceptorBinding....but
>>>>> > > > >>>>>> not 100%
>>>>> > > > >>>>>> > > > > > >>> sure....what
>>>>> > > > >>>>>> > > > > > >>> > is
>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM,
>>>>> Luís
>>>>> > > Alves <
>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your
>>>>> tests
>>>>> > with
>>>>> > > > the
>>>>> > > > >>>>>> > > > @CacheResult
>>>>> > > > >>>>>> > > > > > >>> > > interceptor
>>>>> > > > >>>>>> > > > > > >>> > > >> ;)
>>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM,
>>>>> Thomas
>>>>> > > > >>>>>> Andraschko <
>>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com>
>>>>> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the
>>>>> interceptor is
>>>>> > > really
>>>>> > > > >>>>>> called
>>>>> > > > >>>>>> > ;)
>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
>>>>> Alves <
>>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> >:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>>>>> > > declaration
>>>>> > > > >>>>>> of the
>>>>> > > > >>>>>> > > > > > interceptor
>>>>> > > > >>>>>> > > > > > >>> for
>>>>> > > > >>>>>> > > > > > >>> > > the
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>>>>> > called....SO
>>>>> > > it
>>>>> > > > >>>>>> should
>>>>> > > > >>>>>> > > work
>>>>> > > > >>>>>> > > > > for
>>>>> > > > >>>>>> > > > > > >>> the
>>>>> > > > >>>>>> > > > > > >>> > > cache
>>>>> > > > >>>>>> > > > > > >>> > > >> as
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43
>>>>> PM,
>>>>> > Luís
>>>>> > > > >>>>>> Alves <
>>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one
>>>>> (in
>>>>> > fact
>>>>> > > > is
>>>>> > > > >>>>>> a
>>>>> > > > >>>>>> > "copy"
>>>>> > > > >>>>>> > > of
>>>>> > > > >>>>>> > > > > > yours
>>>>> > > > >>>>>> > > > > > >>> > that
>>>>> > > > >>>>>> > > > > > >>> > > >> logs
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>>>>> CustomInterceptorImpl
>>>>> > > > >>>>>> implements
>>>>> > > > >>>>>> > > > > > Serializable
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
>>>>> > > > >>>>>> serialVersionUID =
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>>> > > > >>>>>> interceptIt(InvocationContext
>>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>>> > > > >>>>>> > CustomInterceptorImpl
>>>>> > > > >>>>>> > > > was
>>>>> > > > >>>>>> > > > > > >>> > called");
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>>>>> > > > >>>>>> invocationContext.proceed();
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml
>>>>> (for
>>>>> > > > service
>>>>> > > > >>>>>> and
>>>>> > > > >>>>>> > repo
>>>>> > > > >>>>>> > > > > > layers):
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>>>>> > > encoding="UTF-8"?>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>>>>> > > http://java.sun.com/xml
>>>>> > > > >>>>>> /ns/javaee
>>>>> > > > >>>>>> > "
>>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> http://www.w3.org/2001/XMLSche
>>>>> > > > >>>>>> ma-instance"
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>  xsi:schemaLocation="http://
>>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> http://java.sun.com/xml/ns/jav
>>>>> > > > >>>>>> aee/beans_1_0.xsd
>>>>> > > > >>>>>> > ">
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> >  <class>org.jsr107.ri.annotati
>>>>> > > > >>>>>> ons.cdi.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> CacheResultInterceptor</class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>>  <class>eu.gls.ddtm.config.
>>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service
>>>>> layer
>>>>> > but
>>>>> > > > not
>>>>> > > > >>>>>> on the
>>>>> > > > >>>>>> > > > > > >>> @Repository :(
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
>>>>> > 1.x)...
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at
>>>>> 11:50 AM,
>>>>> > > > Thomas
>>>>> > > > >>>>>> > > Andraschko
>>>>> > > > >>>>>> > > > <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
>>>>> > wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>>>>> > > interceptor
>>>>> > > > >>>>>> and check
>>>>> > > > >>>>>> > > if
>>>>> > > > >>>>>> > > > > it's
>>>>> > > > >>>>>> > > > > > >>> > > invoked?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>>>>> > > > weld-2.0.0.Final
>>>>> > > > >>>>>> or
>>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>>> > > > >>>>>> > > > > > >>> > > >> have a
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the
>>>>> unit
>>>>> > test
>>>>> > > as
>>>>> > > > >>>>>> there is
>>>>> > > > >>>>>> > > > > > something
>>>>> > > > >>>>>> > > > > > >>> > > broken,
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i
>>>>> posted
>>>>> > > before.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be
>>>>> great if
>>>>> > you
>>>>> > > > >>>>>> could
>>>>> > > > >>>>>> > > provide a
>>>>> > > > >>>>>> > > > > > >>> unittest
>>>>> > > > >>>>>> > > > > > >>> > > for
>>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to
>>>>> prepare it by
>>>>> > > > >>>>>> myself.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00
>>>>> Luís
>>>>> > > Alves
>>>>> > > > <
>>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > >:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>>>>> success...@CacheResult
>>>>> > > on
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>>>>> > > SomeRepository
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S
>>>>> not sure
>>>>> > > > what
>>>>> > > > >>>>>> I'm
>>>>> > > > >>>>>> > doing
>>>>> > > > >>>>>> > > > > > wrong.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at
>>>>> 11:03
>>>>> > AM,
>>>>> > > > >>>>>> Luís Alves
>>>>> > > > >>>>>> > <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>>>>> > > CustomBaseRepository
>>>>> > > > >>>>>> for
>>>>> > > > >>>>>> > > > now...but
>>>>> > > > >>>>>> > > > > > >>> still
>>>>> > > > >>>>>> > > > > > >>> > > can't
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
>>>>> work...here is
>>>>> > my
>>>>> > > > >>>>>> beans.xml:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>>> > > > >>>>>> encoding="UTF-8"?>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>>>>> > > > http://java.sun.com/
>>>>> > > > >>>>>> > > > xml/ns/javaee"
>>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > http://www.w3.org/2001/XMLSche
>>>>> > > > >>>>>> ma-instance"
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> >  xsi:schemaLocation="http://
>>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> http://java.sun.com/xml/ns/
>>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>>>>> > > > >>>>>> > > > > ">
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>  <class>org.jsr107.ri.
>>>>> > > > >>>>>> > > annotations.cdi.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> CacheResultInterceptor</class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>  <class>org.jsr107.ri.
>>>>> > > > >>>>>> > > annotations.cdi.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> CacheRemoveEntryInterceptor</
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at
>>>>> 10:45
>>>>> > > AM,
>>>>> > > > >>>>>> Luís
>>>>> > > > >>>>>> > Alves
>>>>> > > > >>>>>> > > <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
>>>>> correctly if
>>>>> > > they
>>>>> > > > >>>>>> are on
>>>>> > > > >>>>>> > the
>>>>> > > > >>>>>> > > > > > >>> bean.xml
>>>>> > > > >>>>>> > > > > > >>> > they
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated
>>>>> one don't
>>>>> > > > work.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
>>>>> > didn't
>>>>> > > > had
>>>>> > > > >>>>>> it
>>>>> > > > >>>>>> > > before)
>>>>> > > > >>>>>> > > > > > >>> getting:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > org.apache.deltaspike.data.imp
>>>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation
>>>>> for class
>>>>> > > > class
>>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
>>>>> > > Entity? I
>>>>> > > > >>>>>> got this
>>>>> > > > >>>>>> > > > base
>>>>> > > > >>>>>> > > > > > >>> class
>>>>> > > > >>>>>> > > > > > >>> > for
>>>>> > > > >>>>>> > > > > > >>> > > >> some
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
>>>>> behavior:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>>> > > > >>>>>> CustomBaseRepository
>>>>> > > > >>>>>> > > <E
>>>>> > > > >>>>>> > > > > > >>> extends
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>>> > > > >>>>>> > AbstractEntityRepository<E,
>>>>> > > > >>>>>> > > K>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>>>>> inheritance
>>>>> > is
>>>>> > > > >>>>>> supposed
>>>>> > > > >>>>>> > to
>>>>> > > > >>>>>> > > > work
>>>>> > > > >>>>>> > > > > > >>> with
>>>>> > > > >>>>>> > > > > > >>> > the
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018
>>>>> at 10:23
>>>>> > > AM,
>>>>> > > > >>>>>> Thomas
>>>>> > > > >>>>>> > > > > > Andraschko
>>>>> > > > >>>>>> > > > > > >>> <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> andraschko.thomas@gmail.com>
>>>>> > > > >>>>>> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > https://github.com/apache/delt
>>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > modules/partial-bean/impl/src/
>>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> e/test/core/api/partialbean/
>>>>> > > > uc008
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>>>>> GMT+02:00
>>>>> > > > Thomas
>>>>> > > > >>>>>> > > Andraschko
>>>>> > > > >>>>>> > > > <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> andraschko.thomas@gmail.com
>>>>> > >:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>>>>> generell
>>>>> > > > should
>>>>> > > > >>>>>> be
>>>>> > > > >>>>>> > > > supported
>>>>> > > > >>>>>> > > > > > but
>>>>> > > > >>>>>> > > > > > >>> only
>>>>> > > > >>>>>> > > > > > >>> > > via
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
>>>>> "@Interceptors,
>>>>> > > > >>>>>> @Intercepted
>>>>> > > > >>>>>> > and
>>>>> > > > >>>>>> > > > > > >>> @Decorator"
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>>>>> GMT+02:00
>>>>> > > > Luís
>>>>> > > > >>>>>> Alves <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
>>>>> > > > >>>>>> @Repository is
>>>>> > > > >>>>>> > > > actually
>>>>> > > > >>>>>> > > > > a
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently
>>>>> CDI
>>>>> > > > >>>>>> Interceptors
>>>>> > > > >>>>>> > > applied
>>>>> > > > >>>>>> > > > > via
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are
>>>>> not
>>>>> > > > >>>>>> supported by
>>>>> > > > >>>>>> > our
>>>>> > > > >>>>>> > > > > > proxies!
>>>>> > > > >>>>>> > > > > > >>> > > >> "...does
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20,
>>>>> 2018 at
>>>>> > > 10:11
>>>>> > > > >>>>>> AM, Luís
>>>>> > > > >>>>>> > > > > Alves <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>>>>> > > > @ApplicationScoped
>>>>> > > > >>>>>> the
>>>>> > > > >>>>>> > > > > interceptor
>>>>> > > > >>>>>> > > > > > >>> is
>>>>> > > > >>>>>> > > > > > >>> > not
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>>>>> why...can't
>>>>> > > > >>>>>> @Repository
>>>>> > > > >>>>>> > > > methods
>>>>> > > > >>>>>> > > > > > be
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20,
>>>>> 2018 at
>>>>> > > > 9:53
>>>>> > > > >>>>>> AM,
>>>>> > > > >>>>>> > Luís
>>>>> > > > >>>>>> > > > > Alves
>>>>> > > > >>>>>> > > > > > <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>>>>> > proxied...it
>>>>> > > > >>>>>> should be
>>>>> > > > >>>>>> > > > OK...I
>>>>> > > > >>>>>> > > > > > >>> guess
>>>>> > > > >>>>>> > > > > > >>> > it's
>>>>> > > > >>>>>> > > > > > >>> > > >> like
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20,
>>>>> 2018
>>>>> > at
>>>>> > > > >>>>>> 9:44 AM,
>>>>> > > > >>>>>> > Luís
>>>>> > > > >>>>>> > > > > > Alves <
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
>>>>> > > @Dependent
>>>>> > > > >>>>>> > > scoped...and
>>>>> > > > >>>>>> > > > > > seems
>>>>> > > > >>>>>> > > > > > >>> > that
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors,
>>>>> so
>>>>> > > > >>>>>> > > > @CacheResult(cacheName
>>>>> > > > >>>>>> > > > > =
>>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember
>>>>> that some
>>>>> > > one
>>>>> > > > >>>>>> proposed
>>>>> > > > >>>>>> > > that
>>>>> > > > >>>>>> > > > > > >>> > @Repository
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > @ApplicationScoped...if
>>>>> > > > I
>>>>> > > > >>>>>> change
>>>>> > > > >>>>>> > > them
>>>>> > > > >>>>>> > > > > do
>>>>> > > > >>>>>> > > > > > I
>>>>> > > > >>>>>> > > > > > >>> have
>>>>> > > > >>>>>> > > > > > >>> > > to
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>>>>> > producer
>>>>> > > is
>>>>> > > > >>>>>> the
>>>>> > > > >>>>>> > > > following:
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>  @RequestScoped
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>>>>> > > EntityManager
>>>>> > > > >>>>>> get()
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>>>> > > > >>>>>> entityManager;
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll
>>>>> have a
>>>>> > > > >>>>>> different EM
>>>>> > > > >>>>>> > > for
>>>>> > > > >>>>>> > > > > > each
>>>>> > > > >>>>>> > > > > > >>> HTTP
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>>> > > > >>>>>> > > > @Scheduled(cronExpression
>>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>>> > > > >>>>>> > > > > > >>> > > >>
>>>>> > > > >>>>>> > > > > > >>> > > >
>>>>> > > > >>>>>> > > > > > >>> > >
>>>>> > > > >>>>>> > > > > > >>> >
>>>>> > > > >>>>>> > > > > > >>>
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >>
>>>>> > > > >>>>>> > > > > > >
>>>>> > > > >>>>>> > > > > >
>>>>> > > > >>>>>> > > > >
>>>>> > > > >>>>>> > > >
>>>>> > > > >>>>>> > >
>>>>> > > > >>>>>> >
>>>>> > > > >>>>>>
>>>>> > > > >>>>>
>>>>> > > > >>>>>
>>>>> > > > >>>>
>>>>> > > > >>>
>>>>> > > > >>
>>>>> > > > >
>>>>> > > >
>>>>> > >
>>>>> >
>>>>>
>>>>
>>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
also with:

 @CustomInterceptor
    @CacheResult(cacheName = CacheNames.LOCATION_BY_LOCATION_ID)
    public Location findLocationById(@CacheKey Integer locationId)

my cache never get's populated....on
org.jsr107.ri.annotations.AbstractCacheResultInterceptor.cacheResult(CacheContextSource<I>,
I) we have this chunk of code:

try {
      //Call the annotated method
      result = this.proceed(invocation); //this returns null even if find
returns a location....so I also suspect that's something wrong with the
delegation...

      //Cache non-null result
      if (result != null) {
        cache.put(cacheKey, result);
      }

      return result;
    }





On Mon, Apr 23, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com> wrote:

> something in the DelegateManualInvocationHandler vs
> InterceptManualInvocationHandler....
>
> On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com> wrote:
>
>> Stack without the @CustomInterceptor:
>>
>>
>>
>> Stack with the  @CustomInterceptor:
>>
>>
>>
>> Can't understand the different behavior :( seem like there's a previous
>> lookup for @InterceptorBinding annotations...and since none was found it
>> has skipped the method...but the code tells otherwise...any idea?
>>
>>
>> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> so far I think the *method*.getDeclaredAnnotations() when I don't have
>>> the @CustomInterceptor is the findBy instead of the findLocationById...but
>>> I can't understand why :(
>>> that's why no annotation it's on the list, but makes no sense. I'm going
>>> to try to figure out the behaviour with and without the @CustomInterceptor.
>>>
>>>
>>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
>>> andraschko.thomas@gmail.com> wrote:
>>>
>>>> do you mean that method.getDeclaredAnnotations does not return
>>>> CacheResult?
>>>>
>>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>
>>>> > Good morning,
>>>> >
>>>> > there's still something weird. Only works when I got the
>>>> @CustomInterceptor
>>>> > there.
>>>> >
>>>> >     @CacheResult(cacheName = "loc-cache")
>>>> >     @CustomInterceptor  //only seems to work when I have this
>>>> annotation
>>>> > here
>>>> >     public Location findLocationById(@CacheKey Integer locId)
>>>> >     {
>>>> >         //just a wrapper for caching...
>>>> >         return findBy(locId);
>>>> >     }
>>>> >
>>>> > I'm trying to understand from the trace why the @CacheResult is not
>>>> visible
>>>> > alone...
>>>> >
>>>> >  addInterceptorBindings(beanManager, bindings,
>>>> > method.getDeclaredAnnotations());  <--should see all the
>>>> annotation...
>>>> >
>>>> >
>>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>>>> > andraschko.thomas@gmail.com> wrote:
>>>> >
>>>> > > Would be great if you could create a issue + unittest, so i can fix
>>>> it
>>>> > next
>>>> > > week.
>>>> > >
>>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>> > >
>>>> > > > I have to leave :( don't do any change until I can confirm
>>>> everything
>>>> > ;(
>>>> > > >
>>>> > > > have a nice weekend.
>>>> > > >
>>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <
>>>> luisalves00@gmail.com>
>>>> > > wrote:
>>>> > > >
>>>> > > > > well....I think we might have an issue with the proceed part:
>>>> > > > >
>>>> > > > >  try {
>>>> > > > >       //Call the annotated method
>>>> > > > >       result = this.proceed(invocation); <-- this is not
>>>> calling my
>>>> > > > > method...I think is because the invocation is
>>>> > > > org.apache.deltaspike.proxy.
>>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
>>>> > method
>>>> > > :(
>>>> > > > >
>>>> > > > > any ideas?
>>>> > > > >
>>>> > > > >
>>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>>>> luisalves00@gmail.com>
>>>> > > > wrote:
>>>> > > > >
>>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>>>> > > > >>
>>>> > > > >> not sure the cache is actually working but I think it's not
>>>> related
>>>> > > with
>>>> > > > >> DS. If possible release a version with the fix:
>>>> > > > >>
>>>> > > > >> @ApplicationScoped
>>>> > > > >> @Specializes
>>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>>>> > > > >> InterceptorLookup
>>>> > > > >> {
>>>> > > > >>
>>>> > > > >>     @Override
>>>> > > > >>     protected void addInterceptorBindings(BeanManager
>>>> beanManager,
>>>> > > > >> ArrayList<Annotation> bindings,
>>>> > > > >>             Annotation[] declaredAnnotations)
>>>> > > > >>     {
>>>> > > > >>         for (Annotation annotation : declaredAnnotations)
>>>> > > > >>         {
>>>> > > > >>             if (bindings.contains(annotation))
>>>> > > > >>             {
>>>> > > > >>                 continue;
>>>> > > > >>             }
>>>> > > > >>
>>>> > > > >>             Class<? extends Annotation> annotationType =
>>>> > > > >> annotation.annotationType();
>>>> > > > >>
>>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>>>> > annotationType))*
>>>> > > > >>             {
>>>> > > > >>                 bindings.add(annotation);
>>>> > > > >>             }
>>>> > > > >>
>>>> > > > >>             if (beanManager.isStereotype(annotationType))
>>>> *///fun
>>>> > > part
>>>> > > > >> is that here is well done ;)*
>>>> > > > >>             {
>>>> > > > >>                 for (Annotation subAnnotation :
>>>> > > > >> annotationType.getDeclaredAnnotations())
>>>> > > > >>                 {
>>>> > > > >>                     if (bindings.contains(subAnnotation))
>>>> > > > >>                     {
>>>> > > > >>                         continue;
>>>> > > > >>                     }
>>>> > > > >>
>>>> > > > >>                     if (subAnnotation.annotationType(
>>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>>>> > > > >>                     {
>>>> > > > >>                         bindings.add(subAnnotation);
>>>> > > > >>                     }
>>>> > > > >>                 }
>>>> > > > >>             }
>>>> > > > >>         }
>>>> > > > >>     }
>>>> > > > >>
>>>> > > > >> Thanks very much Thomas :)
>>>> > > > >>
>>>> > > > >>
>>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>>>> luisalves00@gmail.com>
>>>> > > > >> wrote:
>>>> > > > >>
>>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>>>> > > > >>>
>>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>>>> luisalves00@gmail.com
>>>> > >
>>>> > > > >>> wrote:
>>>> > > > >>>
>>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which
>>>> jar I
>>>> > > have
>>>> > > > >>>> to import?!
>>>> > > > >>>>
>>>> > > > >>>>
>>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>>>> > luisalves00@gmail.com>
>>>> > > > >>>> wrote:
>>>> > > > >>>>
>>>> > > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
>>>> > orLookup
>>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
>>>> trick.
>>>> > > > >>>>>
>>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>>>> > > > >>>>>
>>>> > > > >>>>>> https://docs.jboss.org/cdi/api
>>>> /2.0/javax/enterprise/inject/s
>>>> > > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>> > > > >>>>>>
>>>> > > > >>>>>> Would be great if you can test it, create a issue and
>>>> provide a
>>>> > > > patch.
>>>> > > > >>>>>>
>>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>> > > > >>>>>>
>>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>>>> expert
>>>> > on
>>>> > > > the
>>>> > > > >>>>>> mailing
>>>> > > > >>>>>> > list that want to help? ;)
>>>> > > > >>>>>> >
>>>> > > > >>>>>> > https://docs.oracle.com/javaee
>>>> /7/api/javax/enterprise/inject
>>>> > > /spi/
>>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>>>> terceptorBinding-javax.enterpr
>>>> > > > >>>>>> ise.inject.spi
>>>> > > > >>>>>> > .
>>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>> > > > >>>>>> (annotationType.
>>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we
>>>> need some
>>>> > > > >>>>>> runtime way
>>>> > > > >>>>>> > to check it...
>>>> > > > >>>>>> >
>>>> > > > >>>>>> > BTW if a solutions is found can you make it available on
>>>> > 1.8.2?
>>>> > > > >>>>>> >
>>>> > > > >>>>>> >
>>>> > > > >>>>>> >
>>>> > > > >>>>>> >
>>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>>>> > > > >>>>>> >
>>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>>>> lob/master/cache-annotations-
>>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
>>>> c/main/java/org/jsr107/ri/
>>>> > anno
>>>> > > > >>>>>> tations/cdi/
>>>> > > > >>>>>> > > InterceptorExtension.java
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> > > Just check our code here:
>>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>> > > > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>>>> > DeltaSpikeProxyInterceptorLo
>>>> > > ok
>>>> > > > >>>>>> > up.java#L90
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>>>> > > interceptor
>>>> > > > >>>>>> binding
>>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then
>>>> your
>>>> > case
>>>> > > > >>>>>> should
>>>> > > > >>>>>> > work.
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>>>> > luisalves00@gmail.com
>>>> > > >:
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> > > > This is the reference implementation of the
>>>> interceptors:
>>>> > > > >>>>>> > > > https://github.com/jsr107/RI
>>>> > > > >>>>>> > > > They have:
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>>>> > 2001/XMLSchema-instance
>>>> > > "
>>>> > > > >>>>>> > > >        xsi:schemaLocation="
>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>> > > > >>>>>> > > >     <interceptors>
>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>> > > > >>>>>> > > > CacheResultInterceptor</class>
>>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>> > > > >>>>>> > CachePutInterceptor</class>
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>> > > ns.cdi.CacheRemoveEntryInterce
>>>> > > > >>>>>> ptor</
>>>> > > > >>>>>> > class>
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>>> > > ns.cdi.CacheRemoveAllIntercept
>>>> > > > >>>>>> or</class>
>>>> > > > >>>>>> > > >     </interceptors>
>>>> > > > >>>>>> > > > </beans>
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > and they have 2files with:
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > and
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>>> CdiAnnotationProviderImpl
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > > 1) @InterceptorBinding
>>>> > > > >>>>>> > > > > 2) @Interceptors(..)
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > > We only support 1) currently.
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult will
>>>> work
>>>> > > even
>>>> > > > a
>>>> > > > >>>>>> normal
>>>> > > > >>>>>> > > CDI
>>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>>>> > "normal"
>>>> > > > CDI
>>>> > > > >>>>>> way.
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>>>> > > > luisalves00@gmail.com
>>>> > > > >>>>>> >:
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>>>> > > > jsr107spec/issues/401
>>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from
>>>> DS...:(
>>>> > > > >>>>>> > > > > >
>>>> > > > >>>>>> > > > > >
>>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>> > > > >>>>>> luisalves00@gmail.com
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> > > > > wrote:
>>>> > > > >>>>>> > > > > >
>>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > Red Hat
>>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >  * @author Gavin King
>>>> > > > >>>>>> > > > > > >  * @author Pete Muir
>>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>> > > > >>>>>> > > > > > >  */
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>>>> > > > >>>>>> > > > > > > @Documented
>>>> > > > >>>>>> > > > > > > @NormalScope
>>>> > > > >>>>>> > > > > > > @Inherited
>>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > }
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for the
>>>> > > > >>>>>> interceptors? Can
>>>> > > > >>>>>> > > you
>>>> > > > >>>>>> > > > > > point
>>>> > > > >>>>>> > > > > > > me out the code?
>>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations
>>>> even if
>>>> > > they
>>>> > > > >>>>>> don't
>>>> > > > >>>>>> > have
>>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>>>> registered
>>>> > > > >>>>>> > interceptors?
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>> > > > >>>>>> > luisalves00@gmail.com
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > > > > > wrote:
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>>>> Andraschko
>>>> > <
>>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without
>>>> binding.
>>>> > > > >>>>>> CacheResult is
>>>> > > > >>>>>> > > > > actually
>>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the
>>>> > cache
>>>> > > > API
>>>> > > > >>>>>> ;)
>>>> > > > >>>>>> > > > > > >>>
>>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something
>>>> available (
>>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi),
>>>> i'm not
>>>> > > > sure
>>>> > > > >>>>>> if this
>>>> > > > >>>>>> > > > would
>>>> > > > >>>>>> > > > > > >>> work
>>>> > > > >>>>>> > > > > > >>> with the limited ability to add interceptors
>>>> to
>>>> > > > partial
>>>> > > > >>>>>> beans.
>>>> > > > >>>>>> > > > > > >>>
>>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
>>>> create a
>>>> > own
>>>> > > > >>>>>> binding.
>>>> > > > >>>>>> > > > > > >>>
>>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>> > > > >>>>>> luisalves00@gmail.com>:
>>>> > > > >>>>>> > > > > > >>>
>>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>>>> > > > >>>>>> x.cache/cache-api/1.0.0/
>>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> > is there a way that using that annotation
>>>> we get
>>>> > > the
>>>> > > > >>>>>> > > interceptor
>>>> > > > >>>>>> > > > to
>>>> > > > >>>>>> > > > > > >>> work?
>>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>>>> myself....as I
>>>> > > said
>>>> > > > >>>>>> I cannot
>>>> > > > >>>>>> > > > > modify
>>>> > > > >>>>>> > > > > > >>> the
>>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>>>> > > Andraschko <
>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>>>> > internally
>>>> > > > >>>>>> CacheResult
>>>> > > > >>>>>> > > > works
>>>> > > > >>>>>> > > > > > >>> but our
>>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>>>> interceptors
>>>> > by
>>>> > > a
>>>> > > > >>>>>> binding
>>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>> > > > >>>>>> (@Interceptors,
>>>> > > > >>>>>> > > > > > @Intercepted,
>>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>> > > > >>>>>> > > > > > >>> > >
>>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>>>> Andraschko <
>>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>> > > > >>>>>> > > > > > >>> > > >:
>>>> > > > >>>>>> > > > > > >>> > >
>>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>>>> > > interceptorbinding.
>>>> > > > >>>>>> Do you
>>>> > > > >>>>>> > > mean
>>>> > > > >>>>>> > > > > that
>>>> > > > >>>>>> > > > > > >>> it
>>>> > > > >>>>>> > > > > > >>> > does
>>>> > > > >>>>>> > > > > > >>> > > > work without?
>>>> > > > >>>>>> > > > > > >>> > > >
>>>> > > > >>>>>> > > > > > >>> > > >
>>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís
>>>> > Alves
>>>> > > :
>>>> > > > >>>>>> > > > > > >>> > > >
>>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>>>> > > > >>>>>> @InterceptorBinding?
>>>> > > > >>>>>> > > and
>>>> > > > >>>>>> > > > > > check
>>>> > > > >>>>>> > > > > > >>> if
>>>> > > > >>>>>> > > > > > >>> > it
>>>> > > > >>>>>> > > > > > >>> > > >> works?
>>>> > > > >>>>>> > > > > > >>> > > >>
>>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult
>>>> is
>>>> > > > standard
>>>> > > > >>>>>> so I
>>>> > > > >>>>>> > > don't
>>>> > > > >>>>>> > > > > want
>>>> > > > >>>>>> > > > > > >>> to
>>>> > > > >>>>>> > > > > > >>> > > extend
>>>> > > > >>>>>> > > > > > >>> > > >> it to have the
>>>> @InterceptorBinding.....if
>>>> > > this
>>>> > > > >>>>>> is really
>>>> > > > >>>>>> > > the
>>>> > > > >>>>>> > > > > > >>> problem.
>>>> > > > >>>>>> > > > > > >>> > > >>
>>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
>>>> > Alves <
>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >>
>>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>> > > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>>> > > > >>>>>> > > > > > >>> > > >> > {
>>>> > > > >>>>>> > > > > > >>> > > >> > }
>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>>>> > > @InterceptorBinding....but
>>>> > > > >>>>>> not 100%
>>>> > > > >>>>>> > > > > > >>> sure....what
>>>> > > > >>>>>> > > > > > >>> > is
>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM,
>>>> Luís
>>>> > > Alves <
>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your
>>>> tests
>>>> > with
>>>> > > > the
>>>> > > > >>>>>> > > > @CacheResult
>>>> > > > >>>>>> > > > > > >>> > > interceptor
>>>> > > > >>>>>> > > > > > >>> > > >> ;)
>>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM,
>>>> Thomas
>>>> > > > >>>>>> Andraschko <
>>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com>
>>>> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor
>>>> is
>>>> > > really
>>>> > > > >>>>>> called
>>>> > > > >>>>>> > ;)
>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
>>>> Alves <
>>>> > > > >>>>>> > > > > > luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> >:
>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>>>> > > declaration
>>>> > > > >>>>>> of the
>>>> > > > >>>>>> > > > > > interceptor
>>>> > > > >>>>>> > > > > > >>> for
>>>> > > > >>>>>> > > > > > >>> > > the
>>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>>>> > called....SO
>>>> > > it
>>>> > > > >>>>>> should
>>>> > > > >>>>>> > > work
>>>> > > > >>>>>> > > > > for
>>>> > > > >>>>>> > > > > > >>> the
>>>> > > > >>>>>> > > > > > >>> > > cache
>>>> > > > >>>>>> > > > > > >>> > > >> as
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43
>>>> PM,
>>>> > Luís
>>>> > > > >>>>>> Alves <
>>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one
>>>> (in
>>>> > fact
>>>> > > > is
>>>> > > > >>>>>> a
>>>> > > > >>>>>> > "copy"
>>>> > > > >>>>>> > > of
>>>> > > > >>>>>> > > > > > yours
>>>> > > > >>>>>> > > > > > >>> > that
>>>> > > > >>>>>> > > > > > >>> > > >> logs
>>>> > > > >>>>>> > > > > > >>> > > >> >>> a
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>>>> CustomInterceptorImpl
>>>> > > > >>>>>> implements
>>>> > > > >>>>>> > > > > > Serializable
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
>>>> > > > >>>>>> serialVersionUID =
>>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>> > > > >>>>>> interceptIt(InvocationContext
>>>> > > > >>>>>> > > > > > >>> > > invocationContext)
>>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>> > > > >>>>>> > CustomInterceptorImpl
>>>> > > > >>>>>> > > > was
>>>> > > > >>>>>> > > > > > >>> > called");
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>>>> > > > >>>>>> invocationContext.proceed();
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml
>>>> (for
>>>> > > > service
>>>> > > > >>>>>> and
>>>> > > > >>>>>> > repo
>>>> > > > >>>>>> > > > > > layers):
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>>>> > > encoding="UTF-8"?>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>>>> > > http://java.sun.com/xml
>>>> > > > >>>>>> /ns/javaee
>>>> > > > >>>>>> > "
>>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> http://www.w3.org/2001/XMLSche
>>>> > > > >>>>>> ma-instance"
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>  xsi:schemaLocation="http://
>>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> http://java.sun.com/xml/ns/jav
>>>> > > > >>>>>> aee/beans_1_0.xsd
>>>> > > > >>>>>> > ">
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> >  <class>org.jsr107.ri.annotati
>>>> > > > >>>>>> ons.cdi.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>>  <class>eu.gls.ddtm.config.
>>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service
>>>> layer
>>>> > but
>>>> > > > not
>>>> > > > >>>>>> on the
>>>> > > > >>>>>> > > > > > >>> @Repository :(
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
>>>> > 1.x)...
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50
>>>> AM,
>>>> > > > Thomas
>>>> > > > >>>>>> > > Andraschko
>>>> > > > >>>>>> > > > <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
>>>> > wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>>>> > > interceptor
>>>> > > > >>>>>> and check
>>>> > > > >>>>>> > > if
>>>> > > > >>>>>> > > > > it's
>>>> > > > >>>>>> > > > > > >>> > > invoked?
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>>>> > > > weld-2.0.0.Final
>>>> > > > >>>>>> or
>>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>> > > > >>>>>> > > > > > >>> > > >> have a
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the
>>>> unit
>>>> > test
>>>> > > as
>>>> > > > >>>>>> there is
>>>> > > > >>>>>> > > > > > something
>>>> > > > >>>>>> > > > > > >>> > > broken,
>>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i
>>>> posted
>>>> > > before.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great
>>>> if
>>>> > you
>>>> > > > >>>>>> could
>>>> > > > >>>>>> > > provide a
>>>> > > > >>>>>> > > > > > >>> unittest
>>>> > > > >>>>>> > > > > > >>> > > for
>>>> > > > >>>>>> > > > > > >>> > > >> the
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare
>>>> it by
>>>> > > > >>>>>> myself.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00
>>>> Luís
>>>> > > Alves
>>>> > > > <
>>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> > >:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>>>> success...@CacheResult
>>>> > > on
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>>>> > > SomeRepository
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S
>>>> not sure
>>>> > > > what
>>>> > > > >>>>>> I'm
>>>> > > > >>>>>> > doing
>>>> > > > >>>>>> > > > > > wrong.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at
>>>> 11:03
>>>> > AM,
>>>> > > > >>>>>> Luís Alves
>>>> > > > >>>>>> > <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>>>> > > CustomBaseRepository
>>>> > > > >>>>>> for
>>>> > > > >>>>>> > > > now...but
>>>> > > > >>>>>> > > > > > >>> still
>>>> > > > >>>>>> > > > > > >>> > > can't
>>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
>>>> work...here is
>>>> > my
>>>> > > > >>>>>> beans.xml:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>> > > > >>>>>> encoding="UTF-8"?>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>>>> > > > http://java.sun.com/
>>>> > > > >>>>>> > > > xml/ns/javaee"
>>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > http://www.w3.org/2001/XMLSche
>>>> > > > >>>>>> ma-instance"
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> >  xsi:schemaLocation="http://
>>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> http://java.sun.com/xml/ns/
>>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>>>> > > > >>>>>> > > > > ">
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>  <class>org.jsr107.ri.
>>>> > > > >>>>>> > > annotations.cdi.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> CacheResultInterceptor</class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>  <class>org.jsr107.ri.
>>>> > > > >>>>>> > > annotations.cdi.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> CacheRemoveEntryInterceptor</
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at
>>>> 10:45
>>>> > > AM,
>>>> > > > >>>>>> Luís
>>>> > > > >>>>>> > Alves
>>>> > > > >>>>>> > > <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
>>>> correctly if
>>>> > > they
>>>> > > > >>>>>> are on
>>>> > > > >>>>>> > the
>>>> > > > >>>>>> > > > > > >>> bean.xml
>>>> > > > >>>>>> > > > > > >>> > they
>>>> > > > >>>>>> > > > > > >>> > > >> >>> should
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one
>>>> don't
>>>> > > > work.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
>>>> > didn't
>>>> > > > had
>>>> > > > >>>>>> it
>>>> > > > >>>>>> > > before)
>>>> > > > >>>>>> > > > > > >>> getting:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > org.apache.deltaspike.data.imp
>>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for
>>>> class
>>>> > > > class
>>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
>>>> > > Entity? I
>>>> > > > >>>>>> got this
>>>> > > > >>>>>> > > > base
>>>> > > > >>>>>> > > > > > >>> class
>>>> > > > >>>>>> > > > > > >>> > for
>>>> > > > >>>>>> > > > > > >>> > > >> some
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
>>>> behavior:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>> > > > >>>>>> CustomBaseRepository
>>>> > > > >>>>>> > > <E
>>>> > > > >>>>>> > > > > > >>> extends
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>> > > > >>>>>> > AbstractEntityRepository<E,
>>>> > > > >>>>>> > > K>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>>>> inheritance
>>>> > is
>>>> > > > >>>>>> supposed
>>>> > > > >>>>>> > to
>>>> > > > >>>>>> > > > work
>>>> > > > >>>>>> > > > > > >>> with
>>>> > > > >>>>>> > > > > > >>> > the
>>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at
>>>> 10:23
>>>> > > AM,
>>>> > > > >>>>>> Thomas
>>>> > > > >>>>>> > > > > > Andraschko
>>>> > > > >>>>>> > > > > > >>> <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> andraschko.thomas@gmail.com>
>>>> > > > >>>>>> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > https://github.com/apache/delt
>>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > modules/partial-bean/impl/src/
>>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> e/test/core/api/partialbean/
>>>> > > > uc008
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>>>> GMT+02:00
>>>> > > > Thomas
>>>> > > > >>>>>> > > Andraschko
>>>> > > > >>>>>> > > > <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> andraschko.thomas@gmail.com
>>>> > >:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>>>> generell
>>>> > > > should
>>>> > > > >>>>>> be
>>>> > > > >>>>>> > > > supported
>>>> > > > >>>>>> > > > > > but
>>>> > > > >>>>>> > > > > > >>> only
>>>> > > > >>>>>> > > > > > >>> > > via
>>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
>>>> "@Interceptors,
>>>> > > > >>>>>> @Intercepted
>>>> > > > >>>>>> > and
>>>> > > > >>>>>> > > > > > >>> @Decorator"
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>>>> GMT+02:00
>>>> > > > Luís
>>>> > > > >>>>>> Alves <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
>>>> > > > >>>>>> @Repository is
>>>> > > > >>>>>> > > > actually
>>>> > > > >>>>>> > > > > a
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently
>>>> CDI
>>>> > > > >>>>>> Interceptors
>>>> > > > >>>>>> > > applied
>>>> > > > >>>>>> > > > > via
>>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are
>>>> not
>>>> > > > >>>>>> supported by
>>>> > > > >>>>>> > our
>>>> > > > >>>>>> > > > > > proxies!
>>>> > > > >>>>>> > > > > > >>> > > >> "...does
>>>> > > > >>>>>> > > > > > >>> > > >> >>> it
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20,
>>>> 2018 at
>>>> > > 10:11
>>>> > > > >>>>>> AM, Luís
>>>> > > > >>>>>> > > > > Alves <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>>>> > > > @ApplicationScoped
>>>> > > > >>>>>> the
>>>> > > > >>>>>> > > > > interceptor
>>>> > > > >>>>>> > > > > > >>> is
>>>> > > > >>>>>> > > > > > >>> > not
>>>> > > > >>>>>> > > > > > >>> > > >> >>> working
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>>>> why...can't
>>>> > > > >>>>>> @Repository
>>>> > > > >>>>>> > > > methods
>>>> > > > >>>>>> > > > > > be
>>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20,
>>>> 2018 at
>>>> > > > 9:53
>>>> > > > >>>>>> AM,
>>>> > > > >>>>>> > Luís
>>>> > > > >>>>>> > > > > Alves
>>>> > > > >>>>>> > > > > > <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>>>> > proxied...it
>>>> > > > >>>>>> should be
>>>> > > > >>>>>> > > > OK...I
>>>> > > > >>>>>> > > > > > >>> guess
>>>> > > > >>>>>> > > > > > >>> > it's
>>>> > > > >>>>>> > > > > > >>> > > >> like
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20,
>>>> 2018
>>>> > at
>>>> > > > >>>>>> 9:44 AM,
>>>> > > > >>>>>> > Luís
>>>> > > > >>>>>> > > > > > Alves <
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
>>>> > > @Dependent
>>>> > > > >>>>>> > > scoped...and
>>>> > > > >>>>>> > > > > > seems
>>>> > > > >>>>>> > > > > > >>> > that
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>>> > > > >>>>>> > > > @CacheResult(cacheName
>>>> > > > >>>>>> > > > > =
>>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that
>>>> some
>>>> > > one
>>>> > > > >>>>>> proposed
>>>> > > > >>>>>> > > that
>>>> > > > >>>>>> > > > > > >>> > @Repository
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > @ApplicationScoped...if
>>>> > > > I
>>>> > > > >>>>>> change
>>>> > > > >>>>>> > > them
>>>> > > > >>>>>> > > > > do
>>>> > > > >>>>>> > > > > > I
>>>> > > > >>>>>> > > > > > >>> have
>>>> > > > >>>>>> > > > > > >>> > > to
>>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>>>> > producer
>>>> > > is
>>>> > > > >>>>>> the
>>>> > > > >>>>>> > > > following:
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>  @RequestScoped
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>>>> > > EntityManager
>>>> > > > >>>>>> get()
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>>> > > > >>>>>> entityManager;
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll
>>>> have a
>>>> > > > >>>>>> different EM
>>>> > > > >>>>>> > > for
>>>> > > > >>>>>> > > > > > each
>>>> > > > >>>>>> > > > > > >>> HTTP
>>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>> > > > >>>>>> > > > @Scheduled(cronExpression
>>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >>
>>>> > > > >>>>>> > > > > > >>> > > >> >
>>>> > > > >>>>>> > > > > > >>> > > >>
>>>> > > > >>>>>> > > > > > >>> > > >
>>>> > > > >>>>>> > > > > > >>> > >
>>>> > > > >>>>>> > > > > > >>> >
>>>> > > > >>>>>> > > > > > >>>
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >>
>>>> > > > >>>>>> > > > > > >
>>>> > > > >>>>>> > > > > >
>>>> > > > >>>>>> > > > >
>>>> > > > >>>>>> > > >
>>>> > > > >>>>>> > >
>>>> > > > >>>>>> >
>>>> > > > >>>>>>
>>>> > > > >>>>>
>>>> > > > >>>>>
>>>> > > > >>>>
>>>> > > > >>>
>>>> > > > >>
>>>> > > > >
>>>> > > >
>>>> > >
>>>> >
>>>>
>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
something in the DelegateManualInvocationHandler vs
InterceptManualInvocationHandler....

On Mon, Apr 23, 2018 at 9:42 AM, Luís Alves <lu...@gmail.com> wrote:

> Stack without the @CustomInterceptor:
>
>
>
> Stack with the  @CustomInterceptor:
>
>
>
> Can't understand the different behavior :( seem like there's a previous
> lookup for @InterceptorBinding annotations...and since none was found it
> has skipped the method...but the code tells otherwise...any idea?
>
>
> On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com> wrote:
>
>> so far I think the *method*.getDeclaredAnnotations() when I don't have
>> the @CustomInterceptor is the findBy instead of the findLocationById...but
>> I can't understand why :(
>> that's why no annotation it's on the list, but makes no sense. I'm going
>> to try to figure out the behaviour with and without the @CustomInterceptor.
>>
>>
>> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
>> andraschko.thomas@gmail.com> wrote:
>>
>>> do you mean that method.getDeclaredAnnotations does not return
>>> CacheResult?
>>>
>>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>
>>> > Good morning,
>>> >
>>> > there's still something weird. Only works when I got the
>>> @CustomInterceptor
>>> > there.
>>> >
>>> >     @CacheResult(cacheName = "loc-cache")
>>> >     @CustomInterceptor  //only seems to work when I have this
>>> annotation
>>> > here
>>> >     public Location findLocationById(@CacheKey Integer locId)
>>> >     {
>>> >         //just a wrapper for caching...
>>> >         return findBy(locId);
>>> >     }
>>> >
>>> > I'm trying to understand from the trace why the @CacheResult is not
>>> visible
>>> > alone...
>>> >
>>> >  addInterceptorBindings(beanManager, bindings,
>>> > method.getDeclaredAnnotations());  <--should see all the annotation...
>>> >
>>> >
>>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>>> > andraschko.thomas@gmail.com> wrote:
>>> >
>>> > > Would be great if you could create a issue + unittest, so i can fix
>>> it
>>> > next
>>> > > week.
>>> > >
>>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>> > >
>>> > > > I have to leave :( don't do any change until I can confirm
>>> everything
>>> > ;(
>>> > > >
>>> > > > have a nice weekend.
>>> > > >
>>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <luisalves00@gmail.com
>>> >
>>> > > wrote:
>>> > > >
>>> > > > > well....I think we might have an issue with the proceed part:
>>> > > > >
>>> > > > >  try {
>>> > > > >       //Call the annotated method
>>> > > > >       result = this.proceed(invocation); <-- this is not calling
>>> my
>>> > > > > method...I think is because the invocation is
>>> > > > org.apache.deltaspike.proxy.
>>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
>>> > method
>>> > > :(
>>> > > > >
>>> > > > > any ideas?
>>> > > > >
>>> > > > >
>>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>>> luisalves00@gmail.com>
>>> > > > wrote:
>>> > > > >
>>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>>> > > > >>
>>> > > > >> not sure the cache is actually working but I think it's not
>>> related
>>> > > with
>>> > > > >> DS. If possible release a version with the fix:
>>> > > > >>
>>> > > > >> @ApplicationScoped
>>> > > > >> @Specializes
>>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>>> > > > >> InterceptorLookup
>>> > > > >> {
>>> > > > >>
>>> > > > >>     @Override
>>> > > > >>     protected void addInterceptorBindings(BeanManager
>>> beanManager,
>>> > > > >> ArrayList<Annotation> bindings,
>>> > > > >>             Annotation[] declaredAnnotations)
>>> > > > >>     {
>>> > > > >>         for (Annotation annotation : declaredAnnotations)
>>> > > > >>         {
>>> > > > >>             if (bindings.contains(annotation))
>>> > > > >>             {
>>> > > > >>                 continue;
>>> > > > >>             }
>>> > > > >>
>>> > > > >>             Class<? extends Annotation> annotationType =
>>> > > > >> annotation.annotationType();
>>> > > > >>
>>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>>> > annotationType))*
>>> > > > >>             {
>>> > > > >>                 bindings.add(annotation);
>>> > > > >>             }
>>> > > > >>
>>> > > > >>             if (beanManager.isStereotype(annotationType))
>>> *///fun
>>> > > part
>>> > > > >> is that here is well done ;)*
>>> > > > >>             {
>>> > > > >>                 for (Annotation subAnnotation :
>>> > > > >> annotationType.getDeclaredAnnotations())
>>> > > > >>                 {
>>> > > > >>                     if (bindings.contains(subAnnotation))
>>> > > > >>                     {
>>> > > > >>                         continue;
>>> > > > >>                     }
>>> > > > >>
>>> > > > >>                     if (subAnnotation.annotationType(
>>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>>> > > > >>                     {
>>> > > > >>                         bindings.add(subAnnotation);
>>> > > > >>                     }
>>> > > > >>                 }
>>> > > > >>             }
>>> > > > >>         }
>>> > > > >>     }
>>> > > > >>
>>> > > > >> Thanks very much Thomas :)
>>> > > > >>
>>> > > > >>
>>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>>> luisalves00@gmail.com>
>>> > > > >> wrote:
>>> > > > >>
>>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>>> > > > >>>
>>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>>> luisalves00@gmail.com
>>> > >
>>> > > > >>> wrote:
>>> > > > >>>
>>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which
>>> jar I
>>> > > have
>>> > > > >>>> to import?!
>>> > > > >>>>
>>> > > > >>>>
>>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>>> > luisalves00@gmail.com>
>>> > > > >>>> wrote:
>>> > > > >>>>
>>> > > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
>>> > orLookup
>>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the
>>> trick.
>>> > > > >>>>>
>>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>
>>> > > > >>>>>> https://docs.jboss.org/cdi/api
>>> /2.0/javax/enterprise/inject/s
>>> > > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>> > > > >>>>>>
>>> > > > >>>>>> Would be great if you can test it, create a issue and
>>> provide a
>>> > > > patch.
>>> > > > >>>>>>
>>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>> > > > >>>>>>
>>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>>> expert
>>> > on
>>> > > > the
>>> > > > >>>>>> mailing
>>> > > > >>>>>> > list that want to help? ;)
>>> > > > >>>>>> >
>>> > > > >>>>>> > https://docs.oracle.com/javaee
>>> /7/api/javax/enterprise/inject
>>> > > /spi/
>>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>>> terceptorBinding-javax.enterpr
>>> > > > >>>>>> ise.inject.spi
>>> > > > >>>>>> > .
>>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>>> > > > >>>>>> (annotationType.
>>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need
>>> some
>>> > > > >>>>>> runtime way
>>> > > > >>>>>> > to check it...
>>> > > > >>>>>> >
>>> > > > >>>>>> > BTW if a solutions is found can you make it available on
>>> > 1.8.2?
>>> > > > >>>>>> >
>>> > > > >>>>>> >
>>> > > > >>>>>> >
>>> > > > >>>>>> >
>>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>> >
>>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>>> lob/master/cache-annotations-
>>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/sr
>>> c/main/java/org/jsr107/ri/
>>> > anno
>>> > > > >>>>>> tations/cdi/
>>> > > > >>>>>> > > InterceptorExtension.java
>>> > > > >>>>>> > >
>>> > > > >>>>>> > > Just check our code here:
>>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>> > > > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>>> > DeltaSpikeProxyInterceptorLo
>>> > > ok
>>> > > > >>>>>> > up.java#L90
>>> > > > >>>>>> > >
>>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>>> > > interceptor
>>> > > > >>>>>> binding
>>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then
>>> your
>>> > case
>>> > > > >>>>>> should
>>> > > > >>>>>> > work.
>>> > > > >>>>>> > >
>>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>>> > luisalves00@gmail.com
>>> > > >:
>>> > > > >>>>>> > >
>>> > > > >>>>>> > > > This is the reference implementation of the
>>> interceptors:
>>> > > > >>>>>> > > > https://github.com/jsr107/RI
>>> > > > >>>>>> > > > They have:
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>>> > 2001/XMLSchema-instance
>>> > > "
>>> > > > >>>>>> > > >        xsi:schemaLocation="
>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > > > >>>>>> > > >     <interceptors>
>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > > >>>>>> > > > CacheResultInterceptor</class>
>>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > > >>>>>> > CachePutInterceptor</class>
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>> > > ns.cdi.CacheRemoveEntryInterce
>>> > > > >>>>>> ptor</
>>> > > > >>>>>> > class>
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>>> > > ns.cdi.CacheRemoveAllIntercept
>>> > > > >>>>>> or</class>
>>> > > > >>>>>> > > >     </interceptors>
>>> > > > >>>>>> > > > </beans>
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > and they have 2files with:
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > and
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>>> CdiAnnotationProviderImpl
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > > 1) @InterceptorBinding
>>> > > > >>>>>> > > > > 2) @Interceptors(..)
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > > We only support 1) currently.
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult will
>>> work
>>> > > even
>>> > > > a
>>> > > > >>>>>> normal
>>> > > > >>>>>> > > CDI
>>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>>> > "normal"
>>> > > > CDI
>>> > > > >>>>>> way.
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>>> > > > luisalves00@gmail.com
>>> > > > >>>>>> >:
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>>> > > > jsr107spec/issues/401
>>> > > > >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
>>> > > > >>>>>> > > > > >
>>> > > > >>>>>> > > > > >
>>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>> > > > >>>>>> luisalves00@gmail.com
>>> > > > >>>>>> > >
>>> > > > >>>>>> > > > > wrote:
>>> > > > >>>>>> > > > > >
>>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > Red Hat
>>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >  * @author Gavin King
>>> > > > >>>>>> > > > > > >  * @author Pete Muir
>>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>> > > > >>>>>> > > > > > >  */
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>>> > > > >>>>>> > > > > > > @Documented
>>> > > > >>>>>> > > > > > > @NormalScope
>>> > > > >>>>>> > > > > > > @Inherited
>>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > }
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > what I don't understand is how DS look for the
>>> > > > >>>>>> interceptors? Can
>>> > > > >>>>>> > > you
>>> > > > >>>>>> > > > > > point
>>> > > > >>>>>> > > > > > > me out the code?
>>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations even
>>> if
>>> > > they
>>> > > > >>>>>> don't
>>> > > > >>>>>> > have
>>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>>> registered
>>> > > > >>>>>> > interceptors?
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>> > > > >>>>>> > luisalves00@gmail.com
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > > > > > wrote:
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>>> Andraschko
>>> > <
>>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
>>> > > > >>>>>> CacheResult is
>>> > > > >>>>>> > > > > actually
>>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the
>>> > cache
>>> > > > API
>>> > > > >>>>>> ;)
>>> > > > >>>>>> > > > > > >>>
>>> > > > >>>>>> > > > > > >>> Even there is a bridge or something available
>>> (
>>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi),
>>> i'm not
>>> > > > sure
>>> > > > >>>>>> if this
>>> > > > >>>>>> > > > would
>>> > > > >>>>>> > > > > > >>> work
>>> > > > >>>>>> > > > > > >>> with the limited ability to add interceptors
>>> to
>>> > > > partial
>>> > > > >>>>>> beans.
>>> > > > >>>>>> > > > > > >>>
>>> > > > >>>>>> > > > > > >>> I think the best solution for now is to
>>> create a
>>> > own
>>> > > > >>>>>> binding.
>>> > > > >>>>>> > > > > > >>>
>>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>> > > > >>>>>> luisalves00@gmail.com>:
>>> > > > >>>>>> > > > > > >>>
>>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>>> > > > >>>>>> x.cache/cache-api/1.0.0/
>>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> > is there a way that using that annotation
>>> we get
>>> > > the
>>> > > > >>>>>> > > interceptor
>>> > > > >>>>>> > > > to
>>> > > > >>>>>> > > > > > >>> work?
>>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>>> myself....as I
>>> > > said
>>> > > > >>>>>> I cannot
>>> > > > >>>>>> > > > > modify
>>> > > > >>>>>> > > > > > >>> the
>>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>>> > > Andraschko <
>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>>> > internally
>>> > > > >>>>>> CacheResult
>>> > > > >>>>>> > > > works
>>> > > > >>>>>> > > > > > >>> but our
>>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>>> interceptors
>>> > by
>>> > > a
>>> > > > >>>>>> binding
>>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>> > > > >>>>>> (@Interceptors,
>>> > > > >>>>>> > > > > > @Intercepted,
>>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>>> > > > >>>>>> > > > > > >>> > >
>>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>>> Andraschko <
>>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>> > > > >>>>>> > > > > > >>> > > >:
>>> > > > >>>>>> > > > > > >>> > >
>>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>>> > > interceptorbinding.
>>> > > > >>>>>> Do you
>>> > > > >>>>>> > > mean
>>> > > > >>>>>> > > > > that
>>> > > > >>>>>> > > > > > >>> it
>>> > > > >>>>>> > > > > > >>> > does
>>> > > > >>>>>> > > > > > >>> > > > work without?
>>> > > > >>>>>> > > > > > >>> > > >
>>> > > > >>>>>> > > > > > >>> > > >
>>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís
>>> > Alves
>>> > > :
>>> > > > >>>>>> > > > > > >>> > > >
>>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>>> > > > >>>>>> @InterceptorBinding?
>>> > > > >>>>>> > > and
>>> > > > >>>>>> > > > > > check
>>> > > > >>>>>> > > > > > >>> if
>>> > > > >>>>>> > > > > > >>> > it
>>> > > > >>>>>> > > > > > >>> > > >> works?
>>> > > > >>>>>> > > > > > >>> > > >>
>>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
>>> > > > standard
>>> > > > >>>>>> so I
>>> > > > >>>>>> > > don't
>>> > > > >>>>>> > > > > want
>>> > > > >>>>>> > > > > > >>> to
>>> > > > >>>>>> > > > > > >>> > > extend
>>> > > > >>>>>> > > > > > >>> > > >> it to have the
>>> @InterceptorBinding.....if
>>> > > this
>>> > > > >>>>>> is really
>>> > > > >>>>>> > > the
>>> > > > >>>>>> > > > > > >>> problem.
>>> > > > >>>>>> > > > > > >>> > > >>
>>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
>>> > Alves <
>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>> > > > >>>>>> > > > > > >>> > > >>
>>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>> > > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>> > > > >>>>>> > > > > > >>> > > >> > {
>>> > > > >>>>>> > > > > > >>> > > >> > }
>>> > > > >>>>>> > > > > > >>> > > >> >
>>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>>> > > @InterceptorBinding....but
>>> > > > >>>>>> not 100%
>>> > > > >>>>>> > > > > > >>> sure....what
>>> > > > >>>>>> > > > > > >>> > is
>>> > > > >>>>>> > > > > > >>> > > >> the
>>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>>> > > > >>>>>> > > > > > >>> > > >> >
>>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís
>>> > > Alves <
>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>>> > > > >>>>>> > > > > > >>> > > >> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests
>>> > with
>>> > > > the
>>> > > > >>>>>> > > > @CacheResult
>>> > > > >>>>>> > > > > > >>> > > interceptor
>>> > > > >>>>>> > > > > > >>> > > >> ;)
>>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>> > > > >>>>>> > > > > > >>> > > >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM,
>>> Thomas
>>> > > > >>>>>> Andraschko <
>>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor
>>> is
>>> > > really
>>> > > > >>>>>> called
>>> > > > >>>>>> > ;)
>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
>>> Alves <
>>> > > > >>>>>> > > > > > luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> >:
>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>>> > > declaration
>>> > > > >>>>>> of the
>>> > > > >>>>>> > > > > > interceptor
>>> > > > >>>>>> > > > > > >>> for
>>> > > > >>>>>> > > > > > >>> > > the
>>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>>> > called....SO
>>> > > it
>>> > > > >>>>>> should
>>> > > > >>>>>> > > work
>>> > > > >>>>>> > > > > for
>>> > > > >>>>>> > > > > > >>> the
>>> > > > >>>>>> > > > > > >>> > > cache
>>> > > > >>>>>> > > > > > >>> > > >> as
>>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM,
>>> > Luís
>>> > > > >>>>>> Alves <
>>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> > > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one
>>> (in
>>> > fact
>>> > > > is
>>> > > > >>>>>> a
>>> > > > >>>>>> > "copy"
>>> > > > >>>>>> > > of
>>> > > > >>>>>> > > > > > yours
>>> > > > >>>>>> > > > > > >>> > that
>>> > > > >>>>>> > > > > > >>> > > >> logs
>>> > > > >>>>>> > > > > > >>> > > >> >>> a
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>>> CustomInterceptorImpl
>>> > > > >>>>>> implements
>>> > > > >>>>>> > > > > > Serializable
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
>>> > > > >>>>>> serialVersionUID =
>>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>>> > > > >>>>>> interceptIt(InvocationContext
>>> > > > >>>>>> > > > > > >>> > > invocationContext)
>>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>> > > > >>>>>> > CustomInterceptorImpl
>>> > > > >>>>>> > > > was
>>> > > > >>>>>> > > > > > >>> > called");
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>>> > > > >>>>>> invocationContext.proceed();
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml
>>> (for
>>> > > > service
>>> > > > >>>>>> and
>>> > > > >>>>>> > repo
>>> > > > >>>>>> > > > > > layers):
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>>> > > encoding="UTF-8"?>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>>> > > http://java.sun.com/xml
>>> > > > >>>>>> /ns/javaee
>>> > > > >>>>>> > "
>>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
>>> > > > >>>>>> ma-instance"
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>>> > > > >>>>>> aee/beans_1_0.xsd
>>> > > > >>>>>> > ">
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> >  <class>org.jsr107.ri.annotati
>>> > > > >>>>>> ons.cdi.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>>  <class>eu.gls.ddtm.config.
>>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service
>>> layer
>>> > but
>>> > > > not
>>> > > > >>>>>> on the
>>> > > > >>>>>> > > > > > >>> @Repository :(
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
>>> > 1.x)...
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50
>>> AM,
>>> > > > Thomas
>>> > > > >>>>>> > > Andraschko
>>> > > > >>>>>> > > > <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
>>> > wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>>> > > interceptor
>>> > > > >>>>>> and check
>>> > > > >>>>>> > > if
>>> > > > >>>>>> > > > > it's
>>> > > > >>>>>> > > > > > >>> > > invoked?
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>>> > > > weld-2.0.0.Final
>>> > > > >>>>>> or
>>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>> > > > >>>>>> > > > > > >>> > > >> have a
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit
>>> > test
>>> > > as
>>> > > > >>>>>> there is
>>> > > > >>>>>> > > > > > something
>>> > > > >>>>>> > > > > > >>> > > broken,
>>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted
>>> > > before.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great
>>> if
>>> > you
>>> > > > >>>>>> could
>>> > > > >>>>>> > > provide a
>>> > > > >>>>>> > > > > > >>> unittest
>>> > > > >>>>>> > > > > > >>> > > for
>>> > > > >>>>>> > > > > > >>> > > >> the
>>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare
>>> it by
>>> > > > >>>>>> myself.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00
>>> Luís
>>> > > Alves
>>> > > > <
>>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> > >:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>>> success...@CacheResult
>>> > > on
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>>> > > SomeRepository
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not
>>> sure
>>> > > > what
>>> > > > >>>>>> I'm
>>> > > > >>>>>> > doing
>>> > > > >>>>>> > > > > > wrong.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at
>>> 11:03
>>> > AM,
>>> > > > >>>>>> Luís Alves
>>> > > > >>>>>> > <
>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>>> > > CustomBaseRepository
>>> > > > >>>>>> for
>>> > > > >>>>>> > > > now...but
>>> > > > >>>>>> > > > > > >>> still
>>> > > > >>>>>> > > > > > >>> > > can't
>>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to
>>> work...here is
>>> > my
>>> > > > >>>>>> beans.xml:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>> > > > >>>>>> encoding="UTF-8"?>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>>> > > > http://java.sun.com/
>>> > > > >>>>>> > > > xml/ns/javaee"
>>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > http://www.w3.org/2001/XMLSche
>>> > > > >>>>>> ma-instance"
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> >  xsi:schemaLocation="http://
>>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> http://java.sun.com/xml/ns/
>>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>>> > > > >>>>>> > > > > ">
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>  <class>org.jsr107.ri.
>>> > > > >>>>>> > > annotations.cdi.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> CacheResultInterceptor</class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>>  <class>org.jsr107.ri.
>>> > > > >>>>>> > > annotations.cdi.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> CacheRemoveEntryInterceptor</
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at
>>> 10:45
>>> > > AM,
>>> > > > >>>>>> Luís
>>> > > > >>>>>> > Alves
>>> > > > >>>>>> > > <
>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood
>>> correctly if
>>> > > they
>>> > > > >>>>>> are on
>>> > > > >>>>>> > the
>>> > > > >>>>>> > > > > > >>> bean.xml
>>> > > > >>>>>> > > > > > >>> > they
>>> > > > >>>>>> > > > > > >>> > > >> >>> should
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one
>>> don't
>>> > > > work.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
>>> > didn't
>>> > > > had
>>> > > > >>>>>> it
>>> > > > >>>>>> > > before)
>>> > > > >>>>>> > > > > > >>> getting:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > org.apache.deltaspike.data.imp
>>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for
>>> class
>>> > > > class
>>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
>>> > > Entity? I
>>> > > > >>>>>> got this
>>> > > > >>>>>> > > > base
>>> > > > >>>>>> > > > > > >>> class
>>> > > > >>>>>> > > > > > >>> > for
>>> > > > >>>>>> > > > > > >>> > > >> some
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar
>>> behavior:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>> > > > >>>>>> CustomBaseRepository
>>> > > > >>>>>> > > <E
>>> > > > >>>>>> > > > > > >>> extends
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>> > > > >>>>>> > AbstractEntityRepository<E,
>>> > > > >>>>>> > > K>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>>> inheritance
>>> > is
>>> > > > >>>>>> supposed
>>> > > > >>>>>> > to
>>> > > > >>>>>> > > > work
>>> > > > >>>>>> > > > > > >>> with
>>> > > > >>>>>> > > > > > >>> > the
>>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at
>>> 10:23
>>> > > AM,
>>> > > > >>>>>> Thomas
>>> > > > >>>>>> > > > > > Andraschko
>>> > > > >>>>>> > > > > > >>> <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> andraschko.thomas@gmail.com>
>>> > > > >>>>>> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > https://github.com/apache/delt
>>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > modules/partial-bean/impl/src/
>>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> e/test/core/api/partialbean/
>>> > > > uc008
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>>> GMT+02:00
>>> > > > Thomas
>>> > > > >>>>>> > > Andraschko
>>> > > > >>>>>> > > > <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> andraschko.thomas@gmail.com
>>> > >:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>>> generell
>>> > > > should
>>> > > > >>>>>> be
>>> > > > >>>>>> > > > supported
>>> > > > >>>>>> > > > > > but
>>> > > > >>>>>> > > > > > >>> only
>>> > > > >>>>>> > > > > > >>> > > via
>>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via
>>> "@Interceptors,
>>> > > > >>>>>> @Intercepted
>>> > > > >>>>>> > and
>>> > > > >>>>>> > > > > > >>> @Decorator"
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>>> GMT+02:00
>>> > > > Luís
>>> > > > >>>>>> Alves <
>>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
>>> > > > >>>>>> @Repository is
>>> > > > >>>>>> > > > actually
>>> > > > >>>>>> > > > > a
>>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
>>> > > > >>>>>> Interceptors
>>> > > > >>>>>> > > applied
>>> > > > >>>>>> > > > > via
>>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are
>>> not
>>> > > > >>>>>> supported by
>>> > > > >>>>>> > our
>>> > > > >>>>>> > > > > > proxies!
>>> > > > >>>>>> > > > > > >>> > > >> "...does
>>> > > > >>>>>> > > > > > >>> > > >> >>> it
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018
>>> at
>>> > > 10:11
>>> > > > >>>>>> AM, Luís
>>> > > > >>>>>> > > > > Alves <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>>> > > > @ApplicationScoped
>>> > > > >>>>>> the
>>> > > > >>>>>> > > > > interceptor
>>> > > > >>>>>> > > > > > >>> is
>>> > > > >>>>>> > > > > > >>> > not
>>> > > > >>>>>> > > > > > >>> > > >> >>> working
>>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>>> why...can't
>>> > > > >>>>>> @Repository
>>> > > > >>>>>> > > > methods
>>> > > > >>>>>> > > > > > be
>>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20,
>>> 2018 at
>>> > > > 9:53
>>> > > > >>>>>> AM,
>>> > > > >>>>>> > Luís
>>> > > > >>>>>> > > > > Alves
>>> > > > >>>>>> > > > > > <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>>> > proxied...it
>>> > > > >>>>>> should be
>>> > > > >>>>>> > > > OK...I
>>> > > > >>>>>> > > > > > >>> guess
>>> > > > >>>>>> > > > > > >>> > it's
>>> > > > >>>>>> > > > > > >>> > > >> like
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20,
>>> 2018
>>> > at
>>> > > > >>>>>> 9:44 AM,
>>> > > > >>>>>> > Luís
>>> > > > >>>>>> > > > > > Alves <
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
>>> > > @Dependent
>>> > > > >>>>>> > > scoped...and
>>> > > > >>>>>> > > > > > seems
>>> > > > >>>>>> > > > > > >>> > that
>>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>> > > > >>>>>> > > > @CacheResult(cacheName
>>> > > > >>>>>> > > > > =
>>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that
>>> some
>>> > > one
>>> > > > >>>>>> proposed
>>> > > > >>>>>> > > that
>>> > > > >>>>>> > > > > > >>> > @Repository
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > @ApplicationScoped...if
>>> > > > I
>>> > > > >>>>>> change
>>> > > > >>>>>> > > them
>>> > > > >>>>>> > > > > do
>>> > > > >>>>>> > > > > > I
>>> > > > >>>>>> > > > > > >>> have
>>> > > > >>>>>> > > > > > >>> > > to
>>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>>> > producer
>>> > > is
>>> > > > >>>>>> the
>>> > > > >>>>>> > > > following:
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>  @RequestScoped
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>>> > > EntityManager
>>> > > > >>>>>> get()
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>> > > > >>>>>> entityManager;
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll
>>> have a
>>> > > > >>>>>> different EM
>>> > > > >>>>>> > > for
>>> > > > >>>>>> > > > > > each
>>> > > > >>>>>> > > > > > >>> HTTP
>>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>> > > > >>>>>> > > > @Scheduled(cronExpression
>>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>> > > > >>>>>> > > > > > >>> > > >> >>> >
>>> > > > >>>>>> > > > > > >>> > > >> >>>
>>> > > > >>>>>> > > > > > >>> > > >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >>
>>> > > > >>>>>> > > > > > >>> > > >> >
>>> > > > >>>>>> > > > > > >>> > > >>
>>> > > > >>>>>> > > > > > >>> > > >
>>> > > > >>>>>> > > > > > >>> > >
>>> > > > >>>>>> > > > > > >>> >
>>> > > > >>>>>> > > > > > >>>
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >>
>>> > > > >>>>>> > > > > > >
>>> > > > >>>>>> > > > > >
>>> > > > >>>>>> > > > >
>>> > > > >>>>>> > > >
>>> > > > >>>>>> > >
>>> > > > >>>>>> >
>>> > > > >>>>>>
>>> > > > >>>>>
>>> > > > >>>>>
>>> > > > >>>>
>>> > > > >>>
>>> > > > >>
>>> > > > >
>>> > > >
>>> > >
>>> >
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Stack without the @CustomInterceptor:



Stack with the  @CustomInterceptor:



Can't understand the different behavior :( seem like there's a previous
lookup for @InterceptorBinding annotations...and since none was found it
has skipped the method...but the code tells otherwise...any idea?


On Mon, Apr 23, 2018 at 9:17 AM, Luís Alves <lu...@gmail.com> wrote:

> so far I think the *method*.getDeclaredAnnotations() when I don't have
> the @CustomInterceptor is the findBy instead of the findLocationById...but
> I can't understand why :(
> that's why no annotation it's on the list, but makes no sense. I'm going
> to try to figure out the behaviour with and without the @CustomInterceptor.
>
>
> On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> do you mean that method.getDeclaredAnnotations does not return
>> CacheResult?
>>
>> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>
>> > Good morning,
>> >
>> > there's still something weird. Only works when I got the
>> @CustomInterceptor
>> > there.
>> >
>> >     @CacheResult(cacheName = "loc-cache")
>> >     @CustomInterceptor  //only seems to work when I have this annotation
>> > here
>> >     public Location findLocationById(@CacheKey Integer locId)
>> >     {
>> >         //just a wrapper for caching...
>> >         return findBy(locId);
>> >     }
>> >
>> > I'm trying to understand from the trace why the @CacheResult is not
>> visible
>> > alone...
>> >
>> >  addInterceptorBindings(beanManager, bindings,
>> > method.getDeclaredAnnotations());  <--should see all the annotation...
>> >
>> >
>> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
>> > andraschko.thomas@gmail.com> wrote:
>> >
>> > > Would be great if you could create a issue + unittest, so i can fix it
>> > next
>> > > week.
>> > >
>> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>> > >
>> > > > I have to leave :( don't do any change until I can confirm
>> everything
>> > ;(
>> > > >
>> > > > have a nice weekend.
>> > > >
>> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com>
>> > > wrote:
>> > > >
>> > > > > well....I think we might have an issue with the proceed part:
>> > > > >
>> > > > >  try {
>> > > > >       //Call the annotated method
>> > > > >       result = this.proceed(invocation); <-- this is not calling
>> my
>> > > > > method...I think is because the invocation is
>> > > > org.apache.deltaspike.proxy.
>> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
>> > method
>> > > :(
>> > > > >
>> > > > > any ideas?
>> > > > >
>> > > > >
>> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <
>> luisalves00@gmail.com>
>> > > > wrote:
>> > > > >
>> > > > >> seems to work:  org.apache.deltaspike.proxy.im
>> > > > >> pl.invocation.ManualInvocationContext@59fae308
>> > > > >>
>> > > > >> not sure the cache is actually working but I think it's not
>> related
>> > > with
>> > > > >> DS. If possible release a version with the fix:
>> > > > >>
>> > > > >> @ApplicationScoped
>> > > > >> @Specializes
>> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
>> > > > >> InterceptorLookup
>> > > > >> {
>> > > > >>
>> > > > >>     @Override
>> > > > >>     protected void addInterceptorBindings(BeanManager
>> beanManager,
>> > > > >> ArrayList<Annotation> bindings,
>> > > > >>             Annotation[] declaredAnnotations)
>> > > > >>     {
>> > > > >>         for (Annotation annotation : declaredAnnotations)
>> > > > >>         {
>> > > > >>             if (bindings.contains(annotation))
>> > > > >>             {
>> > > > >>                 continue;
>> > > > >>             }
>> > > > >>
>> > > > >>             Class<? extends Annotation> annotationType =
>> > > > >> annotation.annotationType();
>> > > > >>
>> > > > >>           *  if (**beanManager.isInterceptorBinding(
>> > annotationType))*
>> > > > >>             {
>> > > > >>                 bindings.add(annotation);
>> > > > >>             }
>> > > > >>
>> > > > >>             if (beanManager.isStereotype(annotationType))
>> *///fun
>> > > part
>> > > > >> is that here is well done ;)*
>> > > > >>             {
>> > > > >>                 for (Annotation subAnnotation :
>> > > > >> annotationType.getDeclaredAnnotations())
>> > > > >>                 {
>> > > > >>                     if (bindings.contains(subAnnotation))
>> > > > >>                     {
>> > > > >>                         continue;
>> > > > >>                     }
>> > > > >>
>> > > > >>                     if (subAnnotation.annotationType(
>> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
>> > > > >>                     {
>> > > > >>                         bindings.add(subAnnotation);
>> > > > >>                     }
>> > > > >>                 }
>> > > > >>             }
>> > > > >>         }
>> > > > >>     }
>> > > > >>
>> > > > >> Thanks very much Thomas :)
>> > > > >>
>> > > > >>
>> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
>> luisalves00@gmail.com>
>> > > > >> wrote:
>> > > > >>
>> > > > >>> found this one: org.apache.deltaspike.proxy.im
>> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
>> > > > >>>
>> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
>> luisalves00@gmail.com
>> > >
>> > > > >>> wrote:
>> > > > >>>
>> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar
>> I
>> > > have
>> > > > >>>> to import?!
>> > > > >>>>
>> > > > >>>>
>> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
>> > luisalves00@gmail.com>
>> > > > >>>> wrote:
>> > > > >>>>
>> > > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
>> > orLookup
>> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>> > > > >>>>>
>> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>> > > > >>>>> andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>
>> > > > >>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
>> > > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>> > > > >>>>>>
>> > > > >>>>>> Would be great if you can test it, create a issue and
>> provide a
>> > > > patch.
>> > > > >>>>>>
>> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>> > > > >>>>>>
>> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI
>> expert
>> > on
>> > > > the
>> > > > >>>>>> mailing
>> > > > >>>>>> > list that want to help? ;)
>> > > > >>>>>> >
>> > > > >>>>>> > https://docs.oracle.com/javaee
>> /7/api/javax/enterprise/inject
>> > > /spi/
>> > > > >>>>>> > BeforeBeanDiscovery.html#addIn
>> terceptorBinding-javax.enterpr
>> > > > >>>>>> ise.inject.spi
>> > > > >>>>>> > .
>> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
>> > > > >>>>>> (annotationType.
>> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need
>> some
>> > > > >>>>>> runtime way
>> > > > >>>>>> > to check it...
>> > > > >>>>>> >
>> > > > >>>>>> > BTW if a solutions is found can you make it available on
>> > 1.8.2?
>> > > > >>>>>> >
>> > > > >>>>>> >
>> > > > >>>>>> >
>> > > > >>>>>> >
>> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>> >
>> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
>> > > > >>>>>> > > https://github.com/jsr107/RI/b
>> lob/master/cache-annotations-
>> > > > >>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/
>> > anno
>> > > > >>>>>> tations/cdi/
>> > > > >>>>>> > > InterceptorExtension.java
>> > > > >>>>>> > >
>> > > > >>>>>> > > Just check our code here:
>> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
>> > > > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
>> > DeltaSpikeProxyInterceptorLo
>> > > ok
>> > > > >>>>>> > up.java#L90
>> > > > >>>>>> > >
>> > > > >>>>>> > > This code would need ask CDI if this annotation is a
>> > > interceptor
>> > > > >>>>>> binding
>> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then your
>> > case
>> > > > >>>>>> should
>> > > > >>>>>> > work.
>> > > > >>>>>> > >
>> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
>> > luisalves00@gmail.com
>> > > >:
>> > > > >>>>>> > >
>> > > > >>>>>> > > > This is the reference implementation of the
>> interceptors:
>> > > > >>>>>> > > > https://github.com/jsr107/RI
>> > > > >>>>>> > > > They have:
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
>> > 2001/XMLSchema-instance
>> > > "
>> > > > >>>>>> > > >        xsi:schemaLocation="
>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
>> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > > > >>>>>> > > >     <interceptors>
>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>> > > > >>>>>> > > > CacheResultInterceptor</class>
>> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>> > > > >>>>>> > CachePutInterceptor</class>
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>> > > ns.cdi.CacheRemoveEntryInterce
>> > > > >>>>>> ptor</
>> > > > >>>>>> > class>
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
>> > > ns.cdi.CacheRemoveAllIntercept
>> > > > >>>>>> or</class>
>> > > > >>>>>> > > >     </interceptors>
>> > > > >>>>>> > > > </beans>
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > and they have 2files with:
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > and
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.
>> CdiAnnotationProviderImpl
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > > 1) @InterceptorBinding
>> > > > >>>>>> > > > > 2) @Interceptors(..)
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > > We only support 1) currently.
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > > So i have currently no idea how @CacheResult will
>> work
>> > > even
>> > > > a
>> > > > >>>>>> normal
>> > > > >>>>>> > > CDI
>> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
>> > "normal"
>> > > > CDI
>> > > > >>>>>> way.
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
>> > > > luisalves00@gmail.com
>> > > > >>>>>> >:
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
>> > > > jsr107spec/issues/401
>> > > > >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
>> > > > >>>>>> > > > > >
>> > > > >>>>>> > > > > >
>> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>> > > > >>>>>> luisalves00@gmail.com
>> > > > >>>>>> > >
>> > > > >>>>>> > > > > wrote:
>> > > > >>>>>> > > > > >
>> > > > >>>>>> > > > > > > I suppose it's CDI capable.
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > Red Hat
>> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >  * @author Gavin King
>> > > > >>>>>> > > > > > >  * @author Pete Muir
>> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
>> > > > >>>>>> > > > > > >  */
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>> > > > >>>>>> > > > > > > @Retention(RUNTIME)
>> > > > >>>>>> > > > > > > @Documented
>> > > > >>>>>> > > > > > > @NormalScope
>> > > > >>>>>> > > > > > > @Inherited
>> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > }
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > what I don't understand is how DS look for the
>> > > > >>>>>> interceptors? Can
>> > > > >>>>>> > > you
>> > > > >>>>>> > > > > > point
>> > > > >>>>>> > > > > > > me out the code?
>> > > > >>>>>> > > > > > > Isn't possible to look for all annotations even
>> if
>> > > they
>> > > > >>>>>> don't
>> > > > >>>>>> > have
>> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
>> registered
>> > > > >>>>>> > interceptors?
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>> > > > >>>>>> > luisalves00@gmail.com
>> > > > >>>>>> > > >
>> > > > >>>>>> > > > > > wrote:
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
>> Andraschko
>> > <
>> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
>> > > > >>>>>> CacheResult is
>> > > > >>>>>> > > > > actually
>> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
>> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the
>> > cache
>> > > > API
>> > > > >>>>>> ;)
>> > > > >>>>>> > > > > > >>>
>> > > > >>>>>> > > > > > >>> Even there is a bridge or something available (
>> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm
>> not
>> > > > sure
>> > > > >>>>>> if this
>> > > > >>>>>> > > > would
>> > > > >>>>>> > > > > > >>> work
>> > > > >>>>>> > > > > > >>> with the limited ability to add interceptors to
>> > > > partial
>> > > > >>>>>> beans.
>> > > > >>>>>> > > > > > >>>
>> > > > >>>>>> > > > > > >>> I think the best solution for now is to create
>> a
>> > own
>> > > > >>>>>> binding.
>> > > > >>>>>> > > > > > >>>
>> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>> > > > >>>>>> luisalves00@gmail.com>:
>> > > > >>>>>> > > > > > >>>
>> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> > the annotation is this one:
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
>> > > > >>>>>> x.cache/cache-api/1.0.0/
>> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> > is there a way that using that annotation we
>> get
>> > > the
>> > > > >>>>>> > > interceptor
>> > > > >>>>>> > > > to
>> > > > >>>>>> > > > > > >>> work?
>> > > > >>>>>> > > > > > >>> > (I can implement the interceptor
>> myself....as I
>> > > said
>> > > > >>>>>> I cannot
>> > > > >>>>>> > > > > modify
>> > > > >>>>>> > > > > > >>> the
>> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
>> > > Andraschko <
>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
>> > internally
>> > > > >>>>>> CacheResult
>> > > > >>>>>> > > > works
>> > > > >>>>>> > > > > > >>> but our
>> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI
>> interceptors
>> > by
>> > > a
>> > > > >>>>>> binding
>> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
>> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
>> > > > >>>>>> (@Interceptors,
>> > > > >>>>>> > > > > > @Intercepted,
>> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
>> > > > >>>>>> > > > > > >>> > >
>> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
>> Andraschko <
>> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>> > > > >>>>>> > > > > > >>> > > >:
>> > > > >>>>>> > > > > > >>> > >
>> > > > >>>>>> > > > > > >>> > > > In must not work without the
>> > > interceptorbinding.
>> > > > >>>>>> Do you
>> > > > >>>>>> > > mean
>> > > > >>>>>> > > > > that
>> > > > >>>>>> > > > > > >>> it
>> > > > >>>>>> > > > > > >>> > does
>> > > > >>>>>> > > > > > >>> > > > work without?
>> > > > >>>>>> > > > > > >>> > > >
>> > > > >>>>>> > > > > > >>> > > >
>> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís
>> > Alves
>> > > :
>> > > > >>>>>> > > > > > >>> > > >
>> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
>> > > > >>>>>> @InterceptorBinding?
>> > > > >>>>>> > > and
>> > > > >>>>>> > > > > > check
>> > > > >>>>>> > > > > > >>> if
>> > > > >>>>>> > > > > > >>> > it
>> > > > >>>>>> > > > > > >>> > > >> works?
>> > > > >>>>>> > > > > > >>> > > >>
>> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
>> > > > standard
>> > > > >>>>>> so I
>> > > > >>>>>> > > don't
>> > > > >>>>>> > > > > want
>> > > > >>>>>> > > > > > >>> to
>> > > > >>>>>> > > > > > >>> > > extend
>> > > > >>>>>> > > > > > >>> > > >> it to have the
>> @InterceptorBinding.....if
>> > > this
>> > > > >>>>>> is really
>> > > > >>>>>> > > the
>> > > > >>>>>> > > > > > >>> problem.
>> > > > >>>>>> > > > > > >>> > > >>
>> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
>> > Alves <
>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>> > > > >>>>>> > > > > > >>> > > >> wrote:
>> > > > >>>>>> > > > > > >>> > > >>
>> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>> > > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>> > > > >>>>>> > > > > > >>> > > >> > {
>> > > > >>>>>> > > > > > >>> > > >> > }
>> > > > >>>>>> > > > > > >>> > > >> >
>> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
>> > > @InterceptorBinding....but
>> > > > >>>>>> not 100%
>> > > > >>>>>> > > > > > >>> sure....what
>> > > > >>>>>> > > > > > >>> > is
>> > > > >>>>>> > > > > > >>> > > >> the
>> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
>> > > > >>>>>> > > > > > >>> > > >> >
>> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís
>> > > Alves <
>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
>> > > > >>>>>> > > > > > >>> > > >> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >
>> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests
>> > with
>> > > > the
>> > > > >>>>>> > > > @CacheResult
>> > > > >>>>>> > > > > > >>> > > interceptor
>> > > > >>>>>> > > > > > >>> > > >> ;)
>> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
>> > > > >>>>>> > > > > > >>> > > >> >>
>> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM,
>> Thomas
>> > > > >>>>>> Andraschko <
>> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is
>> > > really
>> > > > >>>>>> called
>> > > > >>>>>> > ;)
>> > > > >>>>>> > > > > > >>> > > >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
>> Alves <
>> > > > >>>>>> > > > > > luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> >:
>> > > > >>>>>> > > > > > >>> > > >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
>> > > declaration
>> > > > >>>>>> of the
>> > > > >>>>>> > > > > > interceptor
>> > > > >>>>>> > > > > > >>> for
>> > > > >>>>>> > > > > > >>> > > the
>> > > > >>>>>> > > > > > >>> > > >> >>> web app
>> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
>> > called....SO
>> > > it
>> > > > >>>>>> should
>> > > > >>>>>> > > work
>> > > > >>>>>> > > > > for
>> > > > >>>>>> > > > > > >>> the
>> > > > >>>>>> > > > > > >>> > > cache
>> > > > >>>>>> > > > > > >>> > > >> as
>> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>> > > > >>>>>> > > > > > >>> > > >> >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM,
>> > Luís
>> > > > >>>>>> Alves <
>> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> > > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in
>> > fact
>> > > > is
>> > > > >>>>>> a
>> > > > >>>>>> > "copy"
>> > > > >>>>>> > > of
>> > > > >>>>>> > > > > > yours
>> > > > >>>>>> > > > > > >>> > that
>> > > > >>>>>> > > > > > >>> > > >> logs
>> > > > >>>>>> > > > > > >>> > > >> >>> a
>> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
>> CustomInterceptorImpl
>> > > > >>>>>> implements
>> > > > >>>>>> > > > > > Serializable
>> > > > >>>>>> > > > > > >>> > > >> >>> > > {
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
>> > > > >>>>>> serialVersionUID =
>> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
>> > > > >>>>>> interceptIt(InvocationContext
>> > > > >>>>>> > > > > > >>> > > invocationContext)
>> > > > >>>>>> > > > > > >>> > > >> >>> throws
>> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
>> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>> > > > >>>>>> > CustomInterceptorImpl
>> > > > >>>>>> > > > was
>> > > > >>>>>> > > > > > >>> > called");
>> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
>> > > > >>>>>> invocationContext.proceed();
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
>> > > > >>>>>> > > > > > >>> > > >> >>> > > }
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for
>> > > > service
>> > > > >>>>>> and
>> > > > >>>>>> > repo
>> > > > >>>>>> > > > > > layers):
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
>> > > encoding="UTF-8"?>
>> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
>> > > http://java.sun.com/xml
>> > > > >>>>>> /ns/javaee
>> > > > >>>>>> > "
>> > > > >>>>>> > > > > > >>> xmlns:xsi="
>> > > > >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
>> > > > >>>>>> ma-instance"
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
>> > > > >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>> > > > >>>>>> aee/beans_1_0.xsd
>> > > > >>>>>> > ">
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> >  <class>org.jsr107.ri.annotati
>> > > > >>>>>> ons.cdi.
>> > > > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>>  <class>eu.gls.ddtm.config.
>> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer
>> > but
>> > > > not
>> > > > >>>>>> on the
>> > > > >>>>>> > > > > > >>> @Repository :(
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
>> > 1.x)...
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50
>> AM,
>> > > > Thomas
>> > > > >>>>>> > > Andraschko
>> > > > >>>>>> > > > <
>> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
>> > wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
>> > > interceptor
>> > > > >>>>>> and check
>> > > > >>>>>> > > if
>> > > > >>>>>> > > > > it's
>> > > > >>>>>> > > > > > >>> > > invoked?
>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
>> > > > weld-2.0.0.Final
>> > > > >>>>>> or
>> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
>> > > > >>>>>> > > > > > >>> > > >> have a
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit
>> > test
>> > > as
>> > > > >>>>>> there is
>> > > > >>>>>> > > > > > something
>> > > > >>>>>> > > > > > >>> > > broken,
>> > > > >>>>>> > > > > > >>> > > >> >>> as you
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted
>> > > before.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if
>> > you
>> > > > >>>>>> could
>> > > > >>>>>> > > provide a
>> > > > >>>>>> > > > > > >>> unittest
>> > > > >>>>>> > > > > > >>> > > for
>> > > > >>>>>> > > > > > >>> > > >> the
>> > > > >>>>>> > > > > > >>> > > >> >>> > data
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare
>> it by
>> > > > >>>>>> myself.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís
>> > > Alves
>> > > > <
>> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> > >:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
>> success...@CacheResult
>> > > on
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
>> > > SomeRepository
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not
>> sure
>> > > > what
>> > > > >>>>>> I'm
>> > > > >>>>>> > doing
>> > > > >>>>>> > > > > > wrong.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03
>> > AM,
>> > > > >>>>>> Luís Alves
>> > > > >>>>>> > <
>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
>> > > CustomBaseRepository
>> > > > >>>>>> for
>> > > > >>>>>> > > > now...but
>> > > > >>>>>> > > > > > >>> still
>> > > > >>>>>> > > > > > >>> > > can't
>> > > > >>>>>> > > > > > >>> > > >> >>> get the
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here
>> is
>> > my
>> > > > >>>>>> beans.xml:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>> > > > >>>>>> encoding="UTF-8"?>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
>> > > > http://java.sun.com/
>> > > > >>>>>> > > > xml/ns/javaee"
>> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > http://www.w3.org/2001/XMLSche
>> > > > >>>>>> ma-instance"
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> >  xsi:schemaLocation="http://
>> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> http://java.sun.com/xml/ns/
>> > > > >>>>>> > > > javaee/beans_1_0.xsd
>> > > > >>>>>> > > > > ">
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>  <class>org.jsr107.ri.
>> > > > >>>>>> > > annotations.cdi.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> CacheResultInterceptor</class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>>  <class>org.jsr107.ri.
>> > > > >>>>>> > > annotations.cdi.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>>  <class>org.jsr107.ri.annotati
>> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at
>> 10:45
>> > > AM,
>> > > > >>>>>> Luís
>> > > > >>>>>> > Alves
>> > > > >>>>>> > > <
>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly
>> if
>> > > they
>> > > > >>>>>> are on
>> > > > >>>>>> > the
>> > > > >>>>>> > > > > > >>> bean.xml
>> > > > >>>>>> > > > > > >>> > they
>> > > > >>>>>> > > > > > >>> > > >> >>> should
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one
>> don't
>> > > > work.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
>> > didn't
>> > > > had
>> > > > >>>>>> it
>> > > > >>>>>> > > before)
>> > > > >>>>>> > > > > > >>> getting:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > org.apache.deltaspike.data.imp
>> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for
>> class
>> > > > class
>> > > > >>>>>> > > > > > >>> CustomBaseRepository
>> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
>> > > Entity? I
>> > > > >>>>>> got this
>> > > > >>>>>> > > > base
>> > > > >>>>>> > > > > > >>> class
>> > > > >>>>>> > > > > > >>> > for
>> > > > >>>>>> > > > > > >>> > > >> some
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>> > > > >>>>>> CustomBaseRepository
>> > > > >>>>>> > > <E
>> > > > >>>>>> > > > > > >>> extends
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>> > > > >>>>>> > AbstractEntityRepository<E,
>> > > > >>>>>> > > K>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
>> inheritance
>> > is
>> > > > >>>>>> supposed
>> > > > >>>>>> > to
>> > > > >>>>>> > > > work
>> > > > >>>>>> > > > > > >>> with
>> > > > >>>>>> > > > > > >>> > the
>> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at
>> 10:23
>> > > AM,
>> > > > >>>>>> Thomas
>> > > > >>>>>> > > > > > Andraschko
>> > > > >>>>>> > > > > > >>> <
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> andraschko.thomas@gmail.com>
>> > > > >>>>>> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> > > https://github.com/apache/delt
>> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> > modules/partial-bean/impl/src/
>> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> e/test/core/api/partialbean/
>> > > > uc008
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22
>> GMT+02:00
>> > > > Thomas
>> > > > >>>>>> > > Andraschko
>> > > > >>>>>> > > > <
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> andraschko.thomas@gmail.com
>> > >:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in
>> generell
>> > > > should
>> > > > >>>>>> be
>> > > > >>>>>> > > > supported
>> > > > >>>>>> > > > > > but
>> > > > >>>>>> > > > > > >>> only
>> > > > >>>>>> > > > > > >>> > > via
>> > > > >>>>>> > > > > > >>> > > >> >>> custom
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>> > > > >>>>>> @Intercepted
>> > > > >>>>>> > and
>> > > > >>>>>> > > > > > >>> @Decorator"
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
>> GMT+02:00
>> > > > Luís
>> > > > >>>>>> Alves <
>> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
>> > > > >>>>>> @Repository is
>> > > > >>>>>> > > > actually
>> > > > >>>>>> > > > > a
>> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
>> > > > >>>>>> Interceptors
>> > > > >>>>>> > > applied
>> > > > >>>>>> > > > > via
>> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
>> > > > >>>>>> supported by
>> > > > >>>>>> > our
>> > > > >>>>>> > > > > > proxies!
>> > > > >>>>>> > > > > > >>> > > >> "...does
>> > > > >>>>>> > > > > > >>> > > >> >>> it
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018
>> at
>> > > 10:11
>> > > > >>>>>> AM, Luís
>> > > > >>>>>> > > > > Alves <
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
>> > > > @ApplicationScoped
>> > > > >>>>>> the
>> > > > >>>>>> > > > > interceptor
>> > > > >>>>>> > > > > > >>> is
>> > > > >>>>>> > > > > > >>> > not
>> > > > >>>>>> > > > > > >>> > > >> >>> working
>> > > > >>>>>> > > > > > >>> > > >> >>> > :(
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
>> why...can't
>> > > > >>>>>> @Repository
>> > > > >>>>>> > > > methods
>> > > > >>>>>> > > > > > be
>> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20,
>> 2018 at
>> > > > 9:53
>> > > > >>>>>> AM,
>> > > > >>>>>> > Luís
>> > > > >>>>>> > > > > Alves
>> > > > >>>>>> > > > > > <
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
>> > proxied...it
>> > > > >>>>>> should be
>> > > > >>>>>> > > > OK...I
>> > > > >>>>>> > > > > > >>> guess
>> > > > >>>>>> > > > > > >>> > it's
>> > > > >>>>>> > > > > > >>> > > >> like
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20,
>> 2018
>> > at
>> > > > >>>>>> 9:44 AM,
>> > > > >>>>>> > Luís
>> > > > >>>>>> > > > > > Alves <
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
>> > > @Dependent
>> > > > >>>>>> > > scoped...and
>> > > > >>>>>> > > > > > seems
>> > > > >>>>>> > > > > > >>> > that
>> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>> > > > >>>>>> > > > @CacheResult(cacheName
>> > > > >>>>>> > > > > =
>> > > > >>>>>> > > > > > >>> > > >> "my-cache")
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that
>> some
>> > > one
>> > > > >>>>>> proposed
>> > > > >>>>>> > > that
>> > > > >>>>>> > > > > > >>> > @Repository
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > @ApplicationScoped...if
>> > > > I
>> > > > >>>>>> change
>> > > > >>>>>> > > them
>> > > > >>>>>> > > > > do
>> > > > >>>>>> > > > > > I
>> > > > >>>>>> > > > > > >>> have
>> > > > >>>>>> > > > > > >>> > > to
>> > > > >>>>>> > > > > > >>> > > >> >>> worry
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
>> > producer
>> > > is
>> > > > >>>>>> the
>> > > > >>>>>> > > > following:
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
>> > > EntityManager
>> > > > >>>>>> get()
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>> > > > >>>>>> entityManager;
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll
>> have a
>> > > > >>>>>> different EM
>> > > > >>>>>> > > for
>> > > > >>>>>> > > > > > each
>> > > > >>>>>> > > > > > >>> HTTP
>> > > > >>>>>> > > > > > >>> > > >> >>> request /
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>> > > > >>>>>> > > > @Scheduled(cronExpression
>> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >>
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> > >
>> > > > >>>>>> > > > > > >>> > > >> >>> >
>> > > > >>>>>> > > > > > >>> > > >> >>>
>> > > > >>>>>> > > > > > >>> > > >> >>
>> > > > >>>>>> > > > > > >>> > > >> >>
>> > > > >>>>>> > > > > > >>> > > >> >
>> > > > >>>>>> > > > > > >>> > > >>
>> > > > >>>>>> > > > > > >>> > > >
>> > > > >>>>>> > > > > > >>> > >
>> > > > >>>>>> > > > > > >>> >
>> > > > >>>>>> > > > > > >>>
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >>
>> > > > >>>>>> > > > > > >
>> > > > >>>>>> > > > > >
>> > > > >>>>>> > > > >
>> > > > >>>>>> > > >
>> > > > >>>>>> > >
>> > > > >>>>>> >
>> > > > >>>>>>
>> > > > >>>>>
>> > > > >>>>>
>> > > > >>>>
>> > > > >>>
>> > > > >>
>> > > > >
>> > > >
>> > >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
so far I think the *method*.getDeclaredAnnotations() when I don't have the
@CustomInterceptor is the findBy instead of the findLocationById...but I
can't understand why :(
that's why no annotation it's on the list, but makes no sense. I'm going to
try to figure out the behaviour with and without the @CustomInterceptor.


On Mon, Apr 23, 2018 at 9:12 AM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> do you mean that method.getDeclaredAnnotations does not return CacheResult?
>
> 2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > Good morning,
> >
> > there's still something weird. Only works when I got the
> @CustomInterceptor
> > there.
> >
> >     @CacheResult(cacheName = "loc-cache")
> >     @CustomInterceptor  //only seems to work when I have this annotation
> > here
> >     public Location findLocationById(@CacheKey Integer locId)
> >     {
> >         //just a wrapper for caching...
> >         return findBy(locId);
> >     }
> >
> > I'm trying to understand from the trace why the @CacheResult is not
> visible
> > alone...
> >
> >  addInterceptorBindings(beanManager, bindings,
> > method.getDeclaredAnnotations());  <--should see all the annotation...
> >
> >
> > On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
> > andraschko.thomas@gmail.com> wrote:
> >
> > > Would be great if you could create a issue + unittest, so i can fix it
> > next
> > > week.
> > >
> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >
> > > > I have to leave :( don't do any change until I can confirm everything
> > ;(
> > > >
> > > > have a nice weekend.
> > > >
> > > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > > >
> > > > > well....I think we might have an issue with the proceed part:
> > > > >
> > > > >  try {
> > > > >       //Call the annotated method
> > > > >       result = this.proceed(invocation); <-- this is not calling my
> > > > > method...I think is because the invocation is
> > > > org.apache.deltaspike.proxy.
> > > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
> > method
> > > :(
> > > > >
> > > > > any ideas?
> > > > >
> > > > >
> > > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <luisalves00@gmail.com
> >
> > > > wrote:
> > > > >
> > > > >> seems to work:  org.apache.deltaspike.proxy.im
> > > > >> pl.invocation.ManualInvocationContext@59fae308
> > > > >>
> > > > >> not sure the cache is actually working but I think it's not
> related
> > > with
> > > > >> DS. If possible release a version with the fix:
> > > > >>
> > > > >> @ApplicationScoped
> > > > >> @Specializes
> > > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
> > > > >> InterceptorLookup
> > > > >> {
> > > > >>
> > > > >>     @Override
> > > > >>     protected void addInterceptorBindings(BeanManager
> beanManager,
> > > > >> ArrayList<Annotation> bindings,
> > > > >>             Annotation[] declaredAnnotations)
> > > > >>     {
> > > > >>         for (Annotation annotation : declaredAnnotations)
> > > > >>         {
> > > > >>             if (bindings.contains(annotation))
> > > > >>             {
> > > > >>                 continue;
> > > > >>             }
> > > > >>
> > > > >>             Class<? extends Annotation> annotationType =
> > > > >> annotation.annotationType();
> > > > >>
> > > > >>           *  if (**beanManager.isInterceptorBinding(
> > annotationType))*
> > > > >>             {
> > > > >>                 bindings.add(annotation);
> > > > >>             }
> > > > >>
> > > > >>             if (beanManager.isStereotype(annotationType)) *///fun
> > > part
> > > > >> is that here is well done ;)*
> > > > >>             {
> > > > >>                 for (Annotation subAnnotation :
> > > > >> annotationType.getDeclaredAnnotations())
> > > > >>                 {
> > > > >>                     if (bindings.contains(subAnnotation))
> > > > >>                     {
> > > > >>                         continue;
> > > > >>                     }
> > > > >>
> > > > >>                     if (subAnnotation.annotationType(
> > > > >> ).isAnnotationPresent(InterceptorBinding.class))
> > > > >>                     {
> > > > >>                         bindings.add(subAnnotation);
> > > > >>                     }
> > > > >>                 }
> > > > >>             }
> > > > >>         }
> > > > >>     }
> > > > >>
> > > > >> Thanks very much Thomas :)
> > > > >>
> > > > >>
> > > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <
> luisalves00@gmail.com>
> > > > >> wrote:
> > > > >>
> > > > >>> found this one: org.apache.deltaspike.proxy.im
> > > > >>> pl.invocation.InterceptorLookup on version 1.8.0
> > > > >>>
> > > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <
> luisalves00@gmail.com
> > >
> > > > >>> wrote:
> > > > >>>
> > > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I
> > > have
> > > > >>>> to import?!
> > > > >>>>
> > > > >>>>
> > > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
> > luisalves00@gmail.com>
> > > > >>>> wrote:
> > > > >>>>
> > > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
> > orLookup
> > > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
> > > > >>>>>
> > > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> > > > >>>>> andraschko.thomas@gmail.com> wrote:
> > > > >>>>>
> > > > >>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
> > > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
> > > > >>>>>>
> > > > >>>>>> Would be great if you can test it, create a issue and provide
> a
> > > > patch.
> > > > >>>>>>
> > > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > > >>>>>>
> > > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI expert
> > on
> > > > the
> > > > >>>>>> mailing
> > > > >>>>>> > list that want to help? ;)
> > > > >>>>>> >
> > > > >>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/
> inject
> > > /spi/
> > > > >>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.
> enterpr
> > > > >>>>>> ise.inject.spi
> > > > >>>>>> > .
> > > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
> > > > >>>>>> (annotationType.
> > > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need
> some
> > > > >>>>>> runtime way
> > > > >>>>>> > to check it...
> > > > >>>>>> >
> > > > >>>>>> > BTW if a solutions is found can you make it available on
> > 1.8.2?
> > > > >>>>>> >
> > > > >>>>>> >
> > > > >>>>>> >
> > > > >>>>>> >
> > > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> > > > >>>>>> > andraschko.thomas@gmail.com> wrote:
> > > > >>>>>> >
> > > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
> > > > >>>>>> > > https://github.com/jsr107/RI/
> blob/master/cache-annotations-
> > > > >>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/
> > anno
> > > > >>>>>> tations/cdi/
> > > > >>>>>> > > InterceptorExtension.java
> > > > >>>>>> > >
> > > > >>>>>> > > Just check our code here:
> > > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
> > > > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
> > > > >>>>>> > > deltaspike/proxy/spi/invocation/
> > DeltaSpikeProxyInterceptorLo
> > > ok
> > > > >>>>>> > up.java#L90
> > > > >>>>>> > >
> > > > >>>>>> > > This code would need ask CDI if this annotation is a
> > > interceptor
> > > > >>>>>> binding
> > > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then your
> > case
> > > > >>>>>> should
> > > > >>>>>> > work.
> > > > >>>>>> > >
> > > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
> > luisalves00@gmail.com
> > > >:
> > > > >>>>>> > >
> > > > >>>>>> > > > This is the reference implementation of the
> interceptors:
> > > > >>>>>> > > > https://github.com/jsr107/RI
> > > > >>>>>> > > > They have:
> > > > >>>>>> > > >
> > > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
> > 2001/XMLSchema-instance
> > > "
> > > > >>>>>> > > >        xsi:schemaLocation="
> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> > > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > > >>>>>> > > >     <interceptors>
> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > > >>>>>> > > > CacheResultInterceptor</class>
> > > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > > >>>>>> > CachePutInterceptor</class>
> > > > >>>>>> > > >
> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > > ns.cdi.CacheRemoveEntryInterce
> > > > >>>>>> ptor</
> > > > >>>>>> > class>
> > > > >>>>>> > > >
> > > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > > ns.cdi.CacheRemoveAllIntercept
> > > > >>>>>> or</class>
> > > > >>>>>> > > >     </interceptors>
> > > > >>>>>> > > > </beans>
> > > > >>>>>> > > >
> > > > >>>>>> > > > and they have 2files with:
> > > > >>>>>> > > >
> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> > > > >>>>>> > > >
> > > > >>>>>> > > > and
> > > > >>>>>> > > >
> > > > >>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> > > > >>>>>> > > >
> > > > >>>>>> > > > The interceptors work on a normal cdi bean.
> > > > >>>>>> > > >
> > > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> > > > >>>>>> > > >
> > > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
> > > > >>>>>> > > > >
> > > > >>>>>> > > > > 1) @InterceptorBinding
> > > > >>>>>> > > > > 2) @Interceptors(..)
> > > > >>>>>> > > > >
> > > > >>>>>> > > > > We only support 1) currently.
> > > > >>>>>> > > > >
> > > > >>>>>> > > > > So i have currently no idea how @CacheResult will work
> > > even
> > > > a
> > > > >>>>>> normal
> > > > >>>>>> > > CDI
> > > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
> > "normal"
> > > > CDI
> > > > >>>>>> way.
> > > > >>>>>> > > > >
> > > > >>>>>> > > > >
> > > > >>>>>> > > > >
> > > > >>>>>> > > > >
> > > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> > > > luisalves00@gmail.com
> > > > >>>>>> >:
> > > > >>>>>> > > > >
> > > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> > > > jsr107spec/issues/401
> > > > >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
> > > > >>>>>> > > > > >
> > > > >>>>>> > > > > >
> > > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
> > > > >>>>>> luisalves00@gmail.com
> > > > >>>>>> > >
> > > > >>>>>> > > > > wrote:
> > > > >>>>>> > > > > >
> > > > >>>>>> > > > > > > I suppose it's CDI capable.
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > Red Hat
> > > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >  * @author Gavin King
> > > > >>>>>> > > > > > >  * @author Pete Muir
> > > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> > > > >>>>>> > > > > > >  */
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > > > >>>>>> > > > > > > @Retention(RUNTIME)
> > > > >>>>>> > > > > > > @Documented
> > > > >>>>>> > > > > > > @NormalScope
> > > > >>>>>> > > > > > > @Inherited
> > > > >>>>>> > > > > > > public @interface ApplicationScoped {
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > }
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > what I don't understand is how DS look for the
> > > > >>>>>> interceptors? Can
> > > > >>>>>> > > you
> > > > >>>>>> > > > > > point
> > > > >>>>>> > > > > > > me out the code?
> > > > >>>>>> > > > > > > Isn't possible to look for all annotations even if
> > > they
> > > > >>>>>> don't
> > > > >>>>>> > have
> > > > >>>>>> > > > > > > @InterceptorBinding and then look for the
> registered
> > > > >>>>>> > interceptors?
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> > > > >>>>>> > luisalves00@gmail.com
> > > > >>>>>> > > >
> > > > >>>>>> > > > > > wrote:
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > > >> I suppose it's CDI capable.
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas
> Andraschko
> > <
> > > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
> > > > >>>>>> CacheResult is
> > > > >>>>>> > > > > actually
> > > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> > > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the
> > cache
> > > > API
> > > > >>>>>> ;)
> > > > >>>>>> > > > > > >>>
> > > > >>>>>> > > > > > >>> Even there is a bridge or something available (
> > > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm
> not
> > > > sure
> > > > >>>>>> if this
> > > > >>>>>> > > > would
> > > > >>>>>> > > > > > >>> work
> > > > >>>>>> > > > > > >>> with the limited ability to add interceptors to
> > > > partial
> > > > >>>>>> beans.
> > > > >>>>>> > > > > > >>>
> > > > >>>>>> > > > > > >>> I think the best solution for now is to create a
> > own
> > > > >>>>>> binding.
> > > > >>>>>> > > > > > >>>
> > > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
> > > > >>>>>> luisalves00@gmail.com>:
> > > > >>>>>> > > > > > >>>
> > > > >>>>>> > > > > > >>> > uhm...that's not good :S
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> > the annotation is this one:
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> > > > >>>>>> x.cache/cache-api/1.0.0/
> > > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> > is there a way that using that annotation we
> get
> > > the
> > > > >>>>>> > > interceptor
> > > > >>>>>> > > > to
> > > > >>>>>> > > > > > >>> work?
> > > > >>>>>> > > > > > >>> > (I can implement the interceptor myself....as
> I
> > > said
> > > > >>>>>> I cannot
> > > > >>>>>> > > > > modify
> > > > >>>>>> > > > > > >>> the
> > > > >>>>>> > > > > > >>> > annotation as it is javax packge)
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
> > > Andraschko <
> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
> > internally
> > > > >>>>>> CacheResult
> > > > >>>>>> > > > works
> > > > >>>>>> > > > > > >>> but our
> > > > >>>>>> > > > > > >>> > > partial beans only supports CDI interceptors
> > by
> > > a
> > > > >>>>>> binding
> > > > >>>>>> > > > > > >>> > > (InterceptorBinding).
> > > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
> > > > >>>>>> (@Interceptors,
> > > > >>>>>> > > > > > @Intercepted,
> > > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> > > > >>>>>> > > > > > >>> > >
> > > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas
> Andraschko <
> > > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> > > > >>>>>> > > > > > >>> > > >:
> > > > >>>>>> > > > > > >>> > >
> > > > >>>>>> > > > > > >>> > > > In must not work without the
> > > interceptorbinding.
> > > > >>>>>> Do you
> > > > >>>>>> > > mean
> > > > >>>>>> > > > > that
> > > > >>>>>> > > > > > >>> it
> > > > >>>>>> > > > > > >>> > does
> > > > >>>>>> > > > > > >>> > > > work without?
> > > > >>>>>> > > > > > >>> > > >
> > > > >>>>>> > > > > > >>> > > >
> > > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís
> > Alves
> > > :
> > > > >>>>>> > > > > > >>> > > >
> > > > >>>>>> > > > > > >>> > > >> can you update your test to remove
> > > > >>>>>> @InterceptorBinding?
> > > > >>>>>> > > and
> > > > >>>>>> > > > > > check
> > > > >>>>>> > > > > > >>> if
> > > > >>>>>> > > > > > >>> > it
> > > > >>>>>> > > > > > >>> > > >> works?
> > > > >>>>>> > > > > > >>> > > >>
> > > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
> > > > standard
> > > > >>>>>> so I
> > > > >>>>>> > > don't
> > > > >>>>>> > > > > want
> > > > >>>>>> > > > > > >>> to
> > > > >>>>>> > > > > > >>> > > extend
> > > > >>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if
> > > this
> > > > >>>>>> is really
> > > > >>>>>> > > the
> > > > >>>>>> > > > > > >>> problem.
> > > > >>>>>> > > > > > >>> > > >>
> > > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
> > Alves <
> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > > > >>>>>> > > > > > >>> > > >> wrote:
> > > > >>>>>> > > > > > >>> > > >>
> > > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> > > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> > > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
> > > > >>>>>> > > > > > >>> > > >> > {
> > > > >>>>>> > > > > > >>> > > >> > }
> > > > >>>>>> > > > > > >>> > > >> >
> > > > >>>>>> > > > > > >>> > > >> > I suspect is this
> > > @InterceptorBinding....but
> > > > >>>>>> not 100%
> > > > >>>>>> > > > > > >>> sure....what
> > > > >>>>>> > > > > > >>> > is
> > > > >>>>>> > > > > > >>> > > >> the
> > > > >>>>>> > > > > > >>> > > >> > purpose of that?
> > > > >>>>>> > > > > > >>> > > >> >
> > > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís
> > > Alves <
> > > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > > > >>>>>> > > > > > >>> > > >> wrote:
> > > > >>>>>> > > > > > >>> > > >> >
> > > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests
> > with
> > > > the
> > > > >>>>>> > > > @CacheResult
> > > > >>>>>> > > > > > >>> > > interceptor
> > > > >>>>>> > > > > > >>> > > >> ;)
> > > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> > > > >>>>>> > > > > > >>> > > >> >>
> > > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM,
> Thomas
> > > > >>>>>> Andraschko <
> > > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > > >>>>>> > > > > > >>> > > >> >>
> > > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is
> > > really
> > > > >>>>>> called
> > > > >>>>>> > ;)
> > > > >>>>>> > > > > > >>> > > >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís
> Alves <
> > > > >>>>>> > > > > > luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> >:
> > > > >>>>>> > > > > > >>> > > >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
> > > declaration
> > > > >>>>>> of the
> > > > >>>>>> > > > > > interceptor
> > > > >>>>>> > > > > > >>> for
> > > > >>>>>> > > > > > >>> > > the
> > > > >>>>>> > > > > > >>> > > >> >>> web app
> > > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
> > called....SO
> > > it
> > > > >>>>>> should
> > > > >>>>>> > > work
> > > > >>>>>> > > > > for
> > > > >>>>>> > > > > > >>> the
> > > > >>>>>> > > > > > >>> > > cache
> > > > >>>>>> > > > > > >>> > > >> as
> > > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> > > > >>>>>> > > > > > >>> > > >> >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM,
> > Luís
> > > > >>>>>> Alves <
> > > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> > > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in
> > fact
> > > > is
> > > > >>>>>> a
> > > > >>>>>> > "copy"
> > > > >>>>>> > > of
> > > > >>>>>> > > > > > yours
> > > > >>>>>> > > > > > >>> > that
> > > > >>>>>> > > > > > >>> > > >> logs
> > > > >>>>>> > > > > > >>> > > >> >>> a
> > > > >>>>>> > > > > > >>> > > >> >>> > > line):
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> > > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > > > >>>>>> > > > > > >>> > > >> >>> > > public class
> CustomInterceptorImpl
> > > > >>>>>> implements
> > > > >>>>>> > > > > > Serializable
> > > > >>>>>> > > > > > >>> > > >> >>> > > {
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
> > > > >>>>>> serialVersionUID =
> > > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> > > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> > > > >>>>>> interceptIt(InvocationContext
> > > > >>>>>> > > > > > >>> > > invocationContext)
> > > > >>>>>> > > > > > >>> > > >> >>> throws
> > > > >>>>>> > > > > > >>> > > >> >>> > > Exception
> > > > >>>>>> > > > > > >>> > > >> >>> > >     {
> > > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
> > > > >>>>>> > CustomInterceptorImpl
> > > > >>>>>> > > > was
> > > > >>>>>> > > > > > >>> > called");
> > > > >>>>>> > > > > > >>> > > >> >>> > >         return
> > > > >>>>>> invocationContext.proceed();
> > > > >>>>>> > > > > > >>> > > >> >>> > >     }
> > > > >>>>>> > > > > > >>> > > >> >>> > > }
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for
> > > > service
> > > > >>>>>> and
> > > > >>>>>> > repo
> > > > >>>>>> > > > > > layers):
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> > > encoding="UTF-8"?>
> > > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> > > http://java.sun.com/xml
> > > > >>>>>> /ns/javaee
> > > > >>>>>> > "
> > > > >>>>>> > > > > > >>> xmlns:xsi="
> > > > >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
> > > > >>>>>> ma-instance"
> > > > >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> > > > >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
> > > > >>>>>> aee/beans_1_0.xsd
> > > > >>>>>> > ">
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> >  <class>org.jsr107.ri.annotati
> > > > >>>>>> ons.cdi.
> > > > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >     ...
> > > > >>>>>> > > > > > >>> > > >> >>> > >
>  <class>eu.gls.ddtm.config.
> > > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer
> > but
> > > > not
> > > > >>>>>> on the
> > > > >>>>>> > > > > > >>> @Repository :(
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
> > 1.x)...
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM,
> > > > Thomas
> > > > >>>>>> > > Andraschko
> > > > >>>>>> > > > <
> > > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
> > wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
> > > interceptor
> > > > >>>>>> and check
> > > > >>>>>> > > if
> > > > >>>>>> > > > > it's
> > > > >>>>>> > > > > > >>> > > invoked?
> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> > > > weld-2.0.0.Final
> > > > >>>>>> or
> > > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> > > > >>>>>> > > > > > >>> > > >> have a
> > > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit
> > test
> > > as
> > > > >>>>>> there is
> > > > >>>>>> > > > > > something
> > > > >>>>>> > > > > > >>> > > broken,
> > > > >>>>>> > > > > > >>> > > >> >>> as you
> > > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted
> > > before.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if
> > you
> > > > >>>>>> could
> > > > >>>>>> > > provide a
> > > > >>>>>> > > > > > >>> unittest
> > > > >>>>>> > > > > > >>> > > for
> > > > >>>>>> > > > > > >>> > > >> the
> > > > >>>>>> > > > > > >>> > > >> >>> > data
> > > > >>>>>> > > > > > >>> > > >> >>> > >> module.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it
> by
> > > > >>>>>> myself.
> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís
> > > Alves
> > > > <
> > > > >>>>>> > > > > > >>> luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> > >:
> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no
> success...@CacheResult
> > > on
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
> > > SomeRepository
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not
> sure
> > > > what
> > > > >>>>>> I'm
> > > > >>>>>> > doing
> > > > >>>>>> > > > > > wrong.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03
> > AM,
> > > > >>>>>> Luís Alves
> > > > >>>>>> > <
> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> > > CustomBaseRepository
> > > > >>>>>> for
> > > > >>>>>> > > > now...but
> > > > >>>>>> > > > > > >>> still
> > > > >>>>>> > > > > > >>> > > can't
> > > > >>>>>> > > > > > >>> > > >> >>> get the
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here
> is
> > my
> > > > >>>>>> beans.xml:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
> > > > >>>>>> encoding="UTF-8"?>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> > > > http://java.sun.com/
> > > > >>>>>> > > > xml/ns/javaee"
> > > > >>>>>> > > > > > >>> > > xmlns:xsi="
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > http://www.w3.org/2001/XMLSche
> > > > >>>>>> ma-instance"
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> >  xsi:schemaLocation="http://
> > > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > > > >>>>>> > > > javaee/beans_1_0.xsd
> > > > >>>>>> > > > > ">
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>  <class>org.jsr107.ri.
> > > > >>>>>> > > annotations.cdi.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> CacheResultInterceptor</class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>  <class>org.jsr107.ri.
> > > > >>>>>> > > annotations.cdi.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>>  <class>org.jsr107.ri.annotati
> > > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > > >>>>>> > > > > > >>> > > >> >>> > >> class>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at
> 10:45
> > > AM,
> > > > >>>>>> Luís
> > > > >>>>>> > Alves
> > > > >>>>>> > > <
> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly
> if
> > > they
> > > > >>>>>> are on
> > > > >>>>>> > the
> > > > >>>>>> > > > > > >>> bean.xml
> > > > >>>>>> > > > > > >>> > they
> > > > >>>>>> > > > > > >>> > > >> >>> should
> > > > >>>>>> > > > > > >>> > > >> >>> > >> works
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one
> don't
> > > > work.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
> > didn't
> > > > had
> > > > >>>>>> it
> > > > >>>>>> > > before)
> > > > >>>>>> > > > > > >>> getting:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > org.apache.deltaspike.data.imp
> > > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for
> class
> > > > class
> > > > >>>>>> > > > > > >>> CustomBaseRepository
> > > > >>>>>> > > > > > >>> > > >> >>> failed. Is
> > > > >>>>>> > > > > > >>> > > >> >>> > >> it
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
> > > Entity? I
> > > > >>>>>> got this
> > > > >>>>>> > > > base
> > > > >>>>>> > > > > > >>> class
> > > > >>>>>> > > > > > >>> > for
> > > > >>>>>> > > > > > >>> > > >> some
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
> > > > >>>>>> CustomBaseRepository
> > > > >>>>>> > > <E
> > > > >>>>>> > > > > > >>> extends
> > > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> > > > >>>>>> > AbstractEntityRepository<E,
> > > > >>>>>> > > K>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this
> inheritance
> > is
> > > > >>>>>> supposed
> > > > >>>>>> > to
> > > > >>>>>> > > > work
> > > > >>>>>> > > > > > >>> with
> > > > >>>>>> > > > > > >>> > the
> > > > >>>>>> > > > > > >>> > > >> >>> Repos...
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at
> 10:23
> > > AM,
> > > > >>>>>> Thomas
> > > > >>>>>> > > > > > Andraschko
> > > > >>>>>> > > > > > >>> <
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> andraschko.thomas@gmail.com>
> > > > >>>>>> wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > https://github.com/apache/delt
> > > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > modules/partial-bean/impl/src/
> > > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> e/test/core/api/partialbean/
> > > > uc008
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00
> > > > Thomas
> > > > >>>>>> > > Andraschko
> > > > >>>>>> > > > <
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> andraschko.thomas@gmail.com
> > >:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell
> > > > should
> > > > >>>>>> be
> > > > >>>>>> > > > supported
> > > > >>>>>> > > > > > but
> > > > >>>>>> > > > > > >>> only
> > > > >>>>>> > > > > > >>> > > via
> > > > >>>>>> > > > > > >>> > > >> >>> custom
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
> > > > >>>>>> @Intercepted
> > > > >>>>>> > and
> > > > >>>>>> > > > > > >>> @Decorator"
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21
> GMT+02:00
> > > > Luís
> > > > >>>>>> Alves <
> > > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
> > > > >>>>>> @Repository is
> > > > >>>>>> > > > actually
> > > > >>>>>> > > > > a
> > > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > and
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
> > > > >>>>>> Interceptors
> > > > >>>>>> > > applied
> > > > >>>>>> > > > > via
> > > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
> > > > >>>>>> supported by
> > > > >>>>>> > our
> > > > >>>>>> > > > > > proxies!
> > > > >>>>>> > > > > > >>> > > >> "...does
> > > > >>>>>> > > > > > >>> > > >> >>> it
> > > > >>>>>> > > > > > >>> > > >> >>> > >> means
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at
> > > 10:11
> > > > >>>>>> AM, Luís
> > > > >>>>>> > > > > Alves <
> > > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> > > > @ApplicationScoped
> > > > >>>>>> the
> > > > >>>>>> > > > > interceptor
> > > > >>>>>> > > > > > >>> is
> > > > >>>>>> > > > > > >>> > not
> > > > >>>>>> > > > > > >>> > > >> >>> working
> > > > >>>>>> > > > > > >>> > > >> >>> > :(
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out
> why...can't
> > > > >>>>>> @Repository
> > > > >>>>>> > > > methods
> > > > >>>>>> > > > > > be
> > > > >>>>>> > > > > > >>> > > >> >>> intercepted?
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018
> at
> > > > 9:53
> > > > >>>>>> AM,
> > > > >>>>>> > Luís
> > > > >>>>>> > > > > Alves
> > > > >>>>>> > > > > > <
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
> > proxied...it
> > > > >>>>>> should be
> > > > >>>>>> > > > OK...I
> > > > >>>>>> > > > > > >>> guess
> > > > >>>>>> > > > > > >>> > it's
> > > > >>>>>> > > > > > >>> > > >> like
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018
> > at
> > > > >>>>>> 9:44 AM,
> > > > >>>>>> > Luís
> > > > >>>>>> > > > > > Alves <
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
> > > @Dependent
> > > > >>>>>> > > scoped...and
> > > > >>>>>> > > > > > seems
> > > > >>>>>> > > > > > >>> > that
> > > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > > > >>>>>> > > > @CacheResult(cacheName
> > > > >>>>>> > > > > =
> > > > >>>>>> > > > > > >>> > > >> "my-cache")
> > > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that
> some
> > > one
> > > > >>>>>> proposed
> > > > >>>>>> > > that
> > > > >>>>>> > > > > > >>> > @Repository
> > > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > be
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > @ApplicationScoped...if
> > > > I
> > > > >>>>>> change
> > > > >>>>>> > > them
> > > > >>>>>> > > > > do
> > > > >>>>>> > > > > > I
> > > > >>>>>> > > > > > >>> have
> > > > >>>>>> > > > > > >>> > > to
> > > > >>>>>> > > > > > >>> > > >> >>> worry
> > > > >>>>>> > > > > > >>> > > >> >>> > >> with
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
> > producer
> > > is
> > > > >>>>>> the
> > > > >>>>>> > > > following:
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
> > > EntityManager
> > > > >>>>>> get()
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
> > > > >>>>>> entityManager;
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll
> have a
> > > > >>>>>> different EM
> > > > >>>>>> > > for
> > > > >>>>>> > > > > > each
> > > > >>>>>> > > > > > >>> HTTP
> > > > >>>>>> > > > > > >>> > > >> >>> request /
> > > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > > > >>>>>> > > > @Scheduled(cronExpression
> > > > >>>>>> > > > > > >>> > > >> ="....")...am I
> > > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> > >
> > > > >>>>>> > > > > > >>> > > >> >>> >
> > > > >>>>>> > > > > > >>> > > >> >>>
> > > > >>>>>> > > > > > >>> > > >> >>
> > > > >>>>>> > > > > > >>> > > >> >>
> > > > >>>>>> > > > > > >>> > > >> >
> > > > >>>>>> > > > > > >>> > > >>
> > > > >>>>>> > > > > > >>> > > >
> > > > >>>>>> > > > > > >>> > >
> > > > >>>>>> > > > > > >>> >
> > > > >>>>>> > > > > > >>>
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >>
> > > > >>>>>> > > > > > >
> > > > >>>>>> > > > > >
> > > > >>>>>> > > > >
> > > > >>>>>> > > >
> > > > >>>>>> > >
> > > > >>>>>> >
> > > > >>>>>>
> > > > >>>>>
> > > > >>>>>
> > > > >>>>
> > > > >>>
> > > > >>
> > > > >
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
do you mean that method.getDeclaredAnnotations does not return CacheResult?

2018-04-23 10:09 GMT+02:00 Luís Alves <lu...@gmail.com>:

> Good morning,
>
> there's still something weird. Only works when I got the @CustomInterceptor
> there.
>
>     @CacheResult(cacheName = "loc-cache")
>     @CustomInterceptor  //only seems to work when I have this annotation
> here
>     public Location findLocationById(@CacheKey Integer locId)
>     {
>         //just a wrapper for caching...
>         return findBy(locId);
>     }
>
> I'm trying to understand from the trace why the @CacheResult is not visible
> alone...
>
>  addInterceptorBindings(beanManager, bindings,
> method.getDeclaredAnnotations());  <--should see all the annotation...
>
>
> On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > Would be great if you could create a issue + unittest, so i can fix it
> next
> > week.
> >
> > Am Freitag, 20. April 2018 schrieb Luís Alves :
> >
> > > I have to leave :( don't do any change until I can confirm everything
> ;(
> > >
> > > have a nice weekend.
> > >
> > > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com>
> > wrote:
> > >
> > > > well....I think we might have an issue with the proceed part:
> > > >
> > > >  try {
> > > >       //Call the annotated method
> > > >       result = this.proceed(invocation); <-- this is not calling my
> > > > method...I think is because the invocation is
> > > org.apache.deltaspike.proxy.
> > > > impl.invocation.ManualInvocationContext@69b38203 instead of my
> method
> > :(
> > > >
> > > > any ideas?
> > > >
> > > >
> > > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > > >
> > > >> seems to work:  org.apache.deltaspike.proxy.im
> > > >> pl.invocation.ManualInvocationContext@59fae308
> > > >>
> > > >> not sure the cache is actually working but I think it's not related
> > with
> > > >> DS. If possible release a version with the fix:
> > > >>
> > > >> @ApplicationScoped
> > > >> @Specializes
> > > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
> > > >> InterceptorLookup
> > > >> {
> > > >>
> > > >>     @Override
> > > >>     protected void addInterceptorBindings(BeanManager beanManager,
> > > >> ArrayList<Annotation> bindings,
> > > >>             Annotation[] declaredAnnotations)
> > > >>     {
> > > >>         for (Annotation annotation : declaredAnnotations)
> > > >>         {
> > > >>             if (bindings.contains(annotation))
> > > >>             {
> > > >>                 continue;
> > > >>             }
> > > >>
> > > >>             Class<? extends Annotation> annotationType =
> > > >> annotation.annotationType();
> > > >>
> > > >>           *  if (**beanManager.isInterceptorBinding(
> annotationType))*
> > > >>             {
> > > >>                 bindings.add(annotation);
> > > >>             }
> > > >>
> > > >>             if (beanManager.isStereotype(annotationType)) *///fun
> > part
> > > >> is that here is well done ;)*
> > > >>             {
> > > >>                 for (Annotation subAnnotation :
> > > >> annotationType.getDeclaredAnnotations())
> > > >>                 {
> > > >>                     if (bindings.contains(subAnnotation))
> > > >>                     {
> > > >>                         continue;
> > > >>                     }
> > > >>
> > > >>                     if (subAnnotation.annotationType(
> > > >> ).isAnnotationPresent(InterceptorBinding.class))
> > > >>                     {
> > > >>                         bindings.add(subAnnotation);
> > > >>                     }
> > > >>                 }
> > > >>             }
> > > >>         }
> > > >>     }
> > > >>
> > > >> Thanks very much Thomas :)
> > > >>
> > > >>
> > > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com>
> > > >> wrote:
> > > >>
> > > >>> found this one: org.apache.deltaspike.proxy.im
> > > >>> pl.invocation.InterceptorLookup on version 1.8.0
> > > >>>
> > > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <luisalves00@gmail.com
> >
> > > >>> wrote:
> > > >>>
> > > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I
> > have
> > > >>>> to import?!
> > > >>>>
> > > >>>>
> > > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <
> luisalves00@gmail.com>
> > > >>>> wrote:
> > > >>>>
> > > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyIntercept
> orLookup
> > > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
> > > >>>>>
> > > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> > > >>>>> andraschko.thomas@gmail.com> wrote:
> > > >>>>>
> > > >>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
> > > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
> > > >>>>>>
> > > >>>>>> Would be great if you can test it, create a issue and provide a
> > > patch.
> > > >>>>>>
> > > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > >>>>>>
> > > >>>>>> > I have no idea if it's possible or not. Isn't any CDI expert
> on
> > > the
> > > >>>>>> mailing
> > > >>>>>> > list that want to help? ;)
> > > >>>>>> >
> > > >>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject
> > /spi/
> > > >>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
> > > >>>>>> ise.inject.spi
> > > >>>>>> > .
> > > >>>>>> > AnnotatedType- doesn't make the annotation visible to
> > > >>>>>> (annotationType.
> > > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
> > > >>>>>> runtime way
> > > >>>>>> > to check it...
> > > >>>>>> >
> > > >>>>>> > BTW if a solutions is found can you make it available on
> 1.8.2?
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>> >
> > > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> > > >>>>>> > andraschko.thomas@gmail.com> wrote:
> > > >>>>>> >
> > > >>>>>> > > Yep, they add the interceptorBinding dynamically:
> > > >>>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
> > > >>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/
> anno
> > > >>>>>> tations/cdi/
> > > >>>>>> > > InterceptorExtension.java
> > > >>>>>> > >
> > > >>>>>> > > Just check our code here:
> > > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
> > > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
> > > >>>>>> > > deltaspike/proxy/spi/invocation/
> DeltaSpikeProxyInterceptorLo
> > ok
> > > >>>>>> > up.java#L90
> > > >>>>>> > >
> > > >>>>>> > > This code would need ask CDI if this annotation is a
> > interceptor
> > > >>>>>> binding
> > > >>>>>> > > (if possible, not sure if it's in the CDI API). Then your
> case
> > > >>>>>> should
> > > >>>>>> > work.
> > > >>>>>> > >
> > > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <
> luisalves00@gmail.com
> > >:
> > > >>>>>> > >
> > > >>>>>> > > > This is the reference implementation of the interceptors:
> > > >>>>>> > > > https://github.com/jsr107/RI
> > > >>>>>> > > > They have:
> > > >>>>>> > > >
> > > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > >>>>>> > > >        xmlns:xsi="http://www.w3.org/
> 2001/XMLSchema-instance
> > "
> > > >>>>>> > > >        xsi:schemaLocation="
> > > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> > > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >>>>>> > > >     <interceptors>
> > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > >>>>>> > > > CacheResultInterceptor</class>
> > > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > >>>>>> > CachePutInterceptor</class>
> > > >>>>>> > > >
> > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > ns.cdi.CacheRemoveEntryInterce
> > > >>>>>> ptor</
> > > >>>>>> > class>
> > > >>>>>> > > >
> > > >>>>>> > > > <class>org.jsr107.ri.annotatio
> > ns.cdi.CacheRemoveAllIntercept
> > > >>>>>> or</class>
> > > >>>>>> > > >     </interceptors>
> > > >>>>>> > > > </beans>
> > > >>>>>> > > >
> > > >>>>>> > > > and they have 2files with:
> > > >>>>>> > > >
> > > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> > > >>>>>> > > >
> > > >>>>>> > > > and
> > > >>>>>> > > >
> > > >>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> > > >>>>>> > > >
> > > >>>>>> > > > The interceptors work on a normal cdi bean.
> > > >>>>>> > > >
> > > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> > > >>>>>> > > >
> > > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
> > > >>>>>> > > > >
> > > >>>>>> > > > > 1) @InterceptorBinding
> > > >>>>>> > > > > 2) @Interceptors(..)
> > > >>>>>> > > > >
> > > >>>>>> > > > > We only support 1) currently.
> > > >>>>>> > > > >
> > > >>>>>> > > > > So i have currently no idea how @CacheResult will work
> > even
> > > a
> > > >>>>>> normal
> > > >>>>>> > > CDI
> > > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the
> "normal"
> > > CDI
> > > >>>>>> way.
> > > >>>>>> > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> > > luisalves00@gmail.com
> > > >>>>>> >:
> > > >>>>>> > > > >
> > > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> > > jsr107spec/issues/401
> > > >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
> > > >>>>>> > > > > >
> > > >>>>>> > > > > >
> > > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
> > > >>>>>> luisalves00@gmail.com
> > > >>>>>> > >
> > > >>>>>> > > > > wrote:
> > > >>>>>> > > > > >
> > > >>>>>> > > > > > > I suppose it's CDI capable.
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > Red Hat
> > > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >  * @author Gavin King
> > > >>>>>> > > > > > >  * @author Pete Muir
> > > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> > > >>>>>> > > > > > >  */
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > > >>>>>> > > > > > > @Retention(RUNTIME)
> > > >>>>>> > > > > > > @Documented
> > > >>>>>> > > > > > > @NormalScope
> > > >>>>>> > > > > > > @Inherited
> > > >>>>>> > > > > > > public @interface ApplicationScoped {
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > }
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > what I don't understand is how DS look for the
> > > >>>>>> interceptors? Can
> > > >>>>>> > > you
> > > >>>>>> > > > > > point
> > > >>>>>> > > > > > > me out the code?
> > > >>>>>> > > > > > > Isn't possible to look for all annotations even if
> > they
> > > >>>>>> don't
> > > >>>>>> > have
> > > >>>>>> > > > > > > @InterceptorBinding and then look for the registered
> > > >>>>>> > interceptors?
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> > > >>>>>> > luisalves00@gmail.com
> > > >>>>>> > > >
> > > >>>>>> > > > > > wrote:
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > > >> I suppose it's CDI capable.
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko
> <
> > > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
> > > >>>>>> CacheResult is
> > > >>>>>> > > > > actually
> > > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> > > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the
> cache
> > > API
> > > >>>>>> ;)
> > > >>>>>> > > > > > >>>
> > > >>>>>> > > > > > >>> Even there is a bridge or something available (
> > > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not
> > > sure
> > > >>>>>> if this
> > > >>>>>> > > > would
> > > >>>>>> > > > > > >>> work
> > > >>>>>> > > > > > >>> with the limited ability to add interceptors to
> > > partial
> > > >>>>>> beans.
> > > >>>>>> > > > > > >>>
> > > >>>>>> > > > > > >>> I think the best solution for now is to create a
> own
> > > >>>>>> binding.
> > > >>>>>> > > > > > >>>
> > > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
> > > >>>>>> luisalves00@gmail.com>:
> > > >>>>>> > > > > > >>>
> > > >>>>>> > > > > > >>> > uhm...that's not good :S
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> > the annotation is this one:
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> > > >>>>>> x.cache/cache-api/1.0.0/
> > > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> > is there a way that using that annotation we get
> > the
> > > >>>>>> > > interceptor
> > > >>>>>> > > > to
> > > >>>>>> > > > > > >>> work?
> > > >>>>>> > > > > > >>> > (I can implement the interceptor myself....as I
> > said
> > > >>>>>> I cannot
> > > >>>>>> > > > > modify
> > > >>>>>> > > > > > >>> the
> > > >>>>>> > > > > > >>> > annotation as it is javax packge)
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
> > Andraschko <
> > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how
> internally
> > > >>>>>> CacheResult
> > > >>>>>> > > > works
> > > >>>>>> > > > > > >>> but our
> > > >>>>>> > > > > > >>> > > partial beans only supports CDI interceptors
> by
> > a
> > > >>>>>> binding
> > > >>>>>> > > > > > >>> > > (InterceptorBinding).
> > > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
> > > >>>>>> (@Interceptors,
> > > >>>>>> > > > > > @Intercepted,
> > > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> > > >>>>>> > > > > > >>> > >
> > > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> > > >>>>>> > > > > > >>> > > >:
> > > >>>>>> > > > > > >>> > >
> > > >>>>>> > > > > > >>> > > > In must not work without the
> > interceptorbinding.
> > > >>>>>> Do you
> > > >>>>>> > > mean
> > > >>>>>> > > > > that
> > > >>>>>> > > > > > >>> it
> > > >>>>>> > > > > > >>> > does
> > > >>>>>> > > > > > >>> > > > work without?
> > > >>>>>> > > > > > >>> > > >
> > > >>>>>> > > > > > >>> > > >
> > > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís
> Alves
> > :
> > > >>>>>> > > > > > >>> > > >
> > > >>>>>> > > > > > >>> > > >> can you update your test to remove
> > > >>>>>> @InterceptorBinding?
> > > >>>>>> > > and
> > > >>>>>> > > > > > check
> > > >>>>>> > > > > > >>> if
> > > >>>>>> > > > > > >>> > it
> > > >>>>>> > > > > > >>> > > >> works?
> > > >>>>>> > > > > > >>> > > >>
> > > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
> > > standard
> > > >>>>>> so I
> > > >>>>>> > > don't
> > > >>>>>> > > > > want
> > > >>>>>> > > > > > >>> to
> > > >>>>>> > > > > > >>> > > extend
> > > >>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if
> > this
> > > >>>>>> is really
> > > >>>>>> > > the
> > > >>>>>> > > > > > >>> problem.
> > > >>>>>> > > > > > >>> > > >>
> > > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís
> Alves <
> > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > > >>>>>> > > > > > >>> > > >> wrote:
> > > >>>>>> > > > > > >>> > > >>
> > > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> > > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> > > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
> > > >>>>>> > > > > > >>> > > >> > {
> > > >>>>>> > > > > > >>> > > >> > }
> > > >>>>>> > > > > > >>> > > >> >
> > > >>>>>> > > > > > >>> > > >> > I suspect is this
> > @InterceptorBinding....but
> > > >>>>>> not 100%
> > > >>>>>> > > > > > >>> sure....what
> > > >>>>>> > > > > > >>> > is
> > > >>>>>> > > > > > >>> > > >> the
> > > >>>>>> > > > > > >>> > > >> > purpose of that?
> > > >>>>>> > > > > > >>> > > >> >
> > > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís
> > Alves <
> > > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > > >>>>>> > > > > > >>> > > >> wrote:
> > > >>>>>> > > > > > >>> > > >> >
> > > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests
> with
> > > the
> > > >>>>>> > > > @CacheResult
> > > >>>>>> > > > > > >>> > > interceptor
> > > >>>>>> > > > > > >>> > > >> ;)
> > > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> > > >>>>>> > > > > > >>> > > >> >>
> > > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
> > > >>>>>> Andraschko <
> > > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > >>>>>> > > > > > >>> > > >> >>
> > > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is
> > really
> > > >>>>>> called
> > > >>>>>> > ;)
> > > >>>>>> > > > > > >>> > > >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > > >>>>>> > > > > > luisalves00@gmail.com
> > > >>>>>> > > > > > >>> >:
> > > >>>>>> > > > > > >>> > > >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
> > declaration
> > > >>>>>> of the
> > > >>>>>> > > > > > interceptor
> > > >>>>>> > > > > > >>> for
> > > >>>>>> > > > > > >>> > > the
> > > >>>>>> > > > > > >>> > > >> >>> web app
> > > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets
> called....SO
> > it
> > > >>>>>> should
> > > >>>>>> > > work
> > > >>>>>> > > > > for
> > > >>>>>> > > > > > >>> the
> > > >>>>>> > > > > > >>> > > cache
> > > >>>>>> > > > > > >>> > > >> as
> > > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> > > >>>>>> > > > > > >>> > > >> >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM,
> Luís
> > > >>>>>> Alves <
> > > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> > > >>>>>> > > > > > >>> > > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > wrote:
> > > >>>>>> > > > > > >>> > > >> >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in
> fact
> > > is
> > > >>>>>> a
> > > >>>>>> > "copy"
> > > >>>>>> > > of
> > > >>>>>> > > > > > yours
> > > >>>>>> > > > > > >>> > that
> > > >>>>>> > > > > > >>> > > >> logs
> > > >>>>>> > > > > > >>> > > >> >>> a
> > > >>>>>> > > > > > >>> > > >> >>> > > line):
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> > > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > > >>>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
> > > >>>>>> implements
> > > >>>>>> > > > > > Serializable
> > > >>>>>> > > > > > >>> > > >> >>> > > {
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
> > > >>>>>> serialVersionUID =
> > > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> > > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> > > >>>>>> interceptIt(InvocationContext
> > > >>>>>> > > > > > >>> > > invocationContext)
> > > >>>>>> > > > > > >>> > > >> >>> throws
> > > >>>>>> > > > > > >>> > > >> >>> > > Exception
> > > >>>>>> > > > > > >>> > > >> >>> > >     {
> > > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
> > > >>>>>> > CustomInterceptorImpl
> > > >>>>>> > > > was
> > > >>>>>> > > > > > >>> > called");
> > > >>>>>> > > > > > >>> > > >> >>> > >         return
> > > >>>>>> invocationContext.proceed();
> > > >>>>>> > > > > > >>> > > >> >>> > >     }
> > > >>>>>> > > > > > >>> > > >> >>> > > }
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for
> > > service
> > > >>>>>> and
> > > >>>>>> > repo
> > > >>>>>> > > > > > layers):
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> > encoding="UTF-8"?>
> > > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> > http://java.sun.com/xml
> > > >>>>>> /ns/javaee
> > > >>>>>> > "
> > > >>>>>> > > > > > >>> xmlns:xsi="
> > > >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
> > > >>>>>> ma-instance"
> > > >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> > > >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
> > > >>>>>> aee/beans_1_0.xsd
> > > >>>>>> > ">
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> > > >>>>>> > > > > > >>> > > >> >>> > >
>  <class>org.jsr107.ri.annotati
> > > >>>>>> ons.cdi.
> > > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > >>>>>> > > > > > >>> > > >> >>> > >     ...
> > > >>>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> > > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer
> but
> > > not
> > > >>>>>> on the
> > > >>>>>> > > > > > >>> @Repository :(
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI
> 1.x)...
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM,
> > > Thomas
> > > >>>>>> > > Andraschko
> > > >>>>>> > > > <
> > > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com>
> wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
> > interceptor
> > > >>>>>> and check
> > > >>>>>> > > if
> > > >>>>>> > > > > it's
> > > >>>>>> > > > > > >>> > > invoked?
> > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> > > weld-2.0.0.Final
> > > >>>>>> or
> > > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> > > >>>>>> > > > > > >>> > > >> have a
> > > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit
> test
> > as
> > > >>>>>> there is
> > > >>>>>> > > > > > something
> > > >>>>>> > > > > > >>> > > broken,
> > > >>>>>> > > > > > >>> > > >> >>> as you
> > > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted
> > before.
> > > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if
> you
> > > >>>>>> could
> > > >>>>>> > > provide a
> > > >>>>>> > > > > > >>> unittest
> > > >>>>>> > > > > > >>> > > for
> > > >>>>>> > > > > > >>> > > >> the
> > > >>>>>> > > > > > >>> > > >> >>> > data
> > > >>>>>> > > > > > >>> > > >> >>> > >> module.
> > > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by
> > > >>>>>> myself.
> > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís
> > Alves
> > > <
> > > >>>>>> > > > > > >>> luisalves00@gmail.com
> > > >>>>>> > > > > > >>> > >:
> > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult
> > on
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> > > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
> > SomeRepository
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure
> > > what
> > > >>>>>> I'm
> > > >>>>>> > doing
> > > >>>>>> > > > > > wrong.
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03
> AM,
> > > >>>>>> Luís Alves
> > > >>>>>> > <
> > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> > CustomBaseRepository
> > > >>>>>> for
> > > >>>>>> > > > now...but
> > > >>>>>> > > > > > >>> still
> > > >>>>>> > > > > > >>> > > can't
> > > >>>>>> > > > > > >>> > > >> >>> get the
> > > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is
> my
> > > >>>>>> beans.xml:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
> > > >>>>>> encoding="UTF-8"?>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> > > http://java.sun.com/
> > > >>>>>> > > > xml/ns/javaee"
> > > >>>>>> > > > > > >>> > > xmlns:xsi="
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> http://www.w3.org/2001/XMLSche
> > > >>>>>> ma-instance"
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
>  xsi:schemaLocation="http://
> > > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > > >>>>>> > > > javaee/beans_1_0.xsd
> > > >>>>>> > > > > ">
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > > >>>>>> > > annotations.cdi.
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > > >>>>>> > > annotations.cdi.
> > > >>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>>  <class>org.jsr107.ri.annotati
> > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>>  <class>org.jsr107.ri.annotati
> > > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > >>>>>> > > > > > >>> > > >> >>> > >> class>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45
> > AM,
> > > >>>>>> Luís
> > > >>>>>> > Alves
> > > >>>>>> > > <
> > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if
> > they
> > > >>>>>> are on
> > > >>>>>> > the
> > > >>>>>> > > > > > >>> bean.xml
> > > >>>>>> > > > > > >>> > they
> > > >>>>>> > > > > > >>> > > >> >>> should
> > > >>>>>> > > > > > >>> > > >> >>> > >> works
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't
> > > work.
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I
> didn't
> > > had
> > > >>>>>> it
> > > >>>>>> > > before)
> > > >>>>>> > > > > > >>> getting:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> org.apache.deltaspike.data.imp
> > > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class
> > > class
> > > >>>>>> > > > > > >>> CustomBaseRepository
> > > >>>>>> > > > > > >>> > > >> >>> failed. Is
> > > >>>>>> > > > > > >>> > > >> >>> > >> it
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
> > Entity? I
> > > >>>>>> got this
> > > >>>>>> > > > base
> > > >>>>>> > > > > > >>> class
> > > >>>>>> > > > > > >>> > for
> > > >>>>>> > > > > > >>> > > >> some
> > > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
> > > >>>>>> CustomBaseRepository
> > > >>>>>> > > <E
> > > >>>>>> > > > > > >>> extends
> > > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> > > >>>>>> > AbstractEntityRepository<E,
> > > >>>>>> > > K>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance
> is
> > > >>>>>> supposed
> > > >>>>>> > to
> > > >>>>>> > > > work
> > > >>>>>> > > > > > >>> with
> > > >>>>>> > > > > > >>> > the
> > > >>>>>> > > > > > >>> > > >> >>> Repos...
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23
> > AM,
> > > >>>>>> Thomas
> > > >>>>>> > > > > > Andraschko
> > > >>>>>> > > > > > >>> <
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com>
> > > >>>>>> wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > https://github.com/apache/delt
> > > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> modules/partial-bean/impl/src/
> > > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/
> > > uc008
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00
> > > Thomas
> > > >>>>>> > > Andraschko
> > > >>>>>> > > > <
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com
> >:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell
> > > should
> > > >>>>>> be
> > > >>>>>> > > > supported
> > > >>>>>> > > > > > but
> > > >>>>>> > > > > > >>> only
> > > >>>>>> > > > > > >>> > > via
> > > >>>>>> > > > > > >>> > > >> >>> custom
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
> > > >>>>>> @Intercepted
> > > >>>>>> > and
> > > >>>>>> > > > > > >>> @Decorator"
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00
> > > Luís
> > > >>>>>> Alves <
> > > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
> > > >>>>>> @Repository is
> > > >>>>>> > > > actually
> > > >>>>>> > > > > a
> > > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > > >>>>>> > > > > > >>> > > >> >>> > >> > and
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
> > > >>>>>> Interceptors
> > > >>>>>> > > applied
> > > >>>>>> > > > > via
> > > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
> > > >>>>>> supported by
> > > >>>>>> > our
> > > >>>>>> > > > > > proxies!
> > > >>>>>> > > > > > >>> > > >> "...does
> > > >>>>>> > > > > > >>> > > >> >>> it
> > > >>>>>> > > > > > >>> > > >> >>> > >> means
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at
> > 10:11
> > > >>>>>> AM, Luís
> > > >>>>>> > > > > Alves <
> > > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> > > @ApplicationScoped
> > > >>>>>> the
> > > >>>>>> > > > > interceptor
> > > >>>>>> > > > > > >>> is
> > > >>>>>> > > > > > >>> > not
> > > >>>>>> > > > > > >>> > > >> >>> working
> > > >>>>>> > > > > > >>> > > >> >>> > :(
> > > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
> > > >>>>>> @Repository
> > > >>>>>> > > > methods
> > > >>>>>> > > > > > be
> > > >>>>>> > > > > > >>> > > >> >>> intercepted?
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at
> > > 9:53
> > > >>>>>> AM,
> > > >>>>>> > Luís
> > > >>>>>> > > > > Alves
> > > >>>>>> > > > > > <
> > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's
> proxied...it
> > > >>>>>> should be
> > > >>>>>> > > > OK...I
> > > >>>>>> > > > > > >>> guess
> > > >>>>>> > > > > > >>> > it's
> > > >>>>>> > > > > > >>> > > >> like
> > > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018
> at
> > > >>>>>> 9:44 AM,
> > > >>>>>> > Luís
> > > >>>>>> > > > > > Alves <
> > > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
> > @Dependent
> > > >>>>>> > > scoped...and
> > > >>>>>> > > > > > seems
> > > >>>>>> > > > > > >>> > that
> > > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > > >>>>>> > > > @CacheResult(cacheName
> > > >>>>>> > > > > =
> > > >>>>>> > > > > > >>> > > >> "my-cache")
> > > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some
> > one
> > > >>>>>> proposed
> > > >>>>>> > > that
> > > >>>>>> > > > > > >>> > @Repository
> > > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> > > >>>>>> > > > > > >>> > > >> >>> > >> > be
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> @ApplicationScoped...if
> > > I
> > > >>>>>> change
> > > >>>>>> > > them
> > > >>>>>> > > > > do
> > > >>>>>> > > > > > I
> > > >>>>>> > > > > > >>> have
> > > >>>>>> > > > > > >>> > > to
> > > >>>>>> > > > > > >>> > > >> >>> worry
> > > >>>>>> > > > > > >>> > > >> >>> > >> with
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager
> producer
> > is
> > > >>>>>> the
> > > >>>>>> > > > following:
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
> > EntityManager
> > > >>>>>> get()
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
> > > >>>>>> entityManager;
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
> > > >>>>>> different EM
> > > >>>>>> > > for
> > > >>>>>> > > > > > each
> > > >>>>>> > > > > > >>> HTTP
> > > >>>>>> > > > > > >>> > > >> >>> request /
> > > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > > >>>>>> > > > @Scheduled(cronExpression
> > > >>>>>> > > > > > >>> > > >> ="....")...am I
> > > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >> >
> > > >>>>>> > > > > > >>> > > >> >>> > >>
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> > >
> > > >>>>>> > > > > > >>> > > >> >>> >
> > > >>>>>> > > > > > >>> > > >> >>>
> > > >>>>>> > > > > > >>> > > >> >>
> > > >>>>>> > > > > > >>> > > >> >>
> > > >>>>>> > > > > > >>> > > >> >
> > > >>>>>> > > > > > >>> > > >>
> > > >>>>>> > > > > > >>> > > >
> > > >>>>>> > > > > > >>> > >
> > > >>>>>> > > > > > >>> >
> > > >>>>>> > > > > > >>>
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >>
> > > >>>>>> > > > > > >
> > > >>>>>> > > > > >
> > > >>>>>> > > > >
> > > >>>>>> > > >
> > > >>>>>> > >
> > > >>>>>> >
> > > >>>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>
> > > >>>
> > > >>
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Good morning,

there's still something weird. Only works when I got the @CustomInterceptor
there.

    @CacheResult(cacheName = "loc-cache")
    @CustomInterceptor  //only seems to work when I have this annotation
here
    public Location findLocationById(@CacheKey Integer locId)
    {
        //just a wrapper for caching...
        return findBy(locId);
    }

I'm trying to understand from the trace why the @CacheResult is not visible
alone...

 addInterceptorBindings(beanManager, bindings,
method.getDeclaredAnnotations());  <--should see all the annotation...


On Fri, Apr 20, 2018 at 8:11 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> Would be great if you could create a issue + unittest, so i can fix it next
> week.
>
> Am Freitag, 20. April 2018 schrieb Luís Alves :
>
> > I have to leave :( don't do any change until I can confirm everything ;(
> >
> > have a nice weekend.
> >
> > On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> > > well....I think we might have an issue with the proceed part:
> > >
> > >  try {
> > >       //Call the annotated method
> > >       result = this.proceed(invocation); <-- this is not calling my
> > > method...I think is because the invocation is
> > org.apache.deltaspike.proxy.
> > > impl.invocation.ManualInvocationContext@69b38203 instead of my method
> :(
> > >
> > > any ideas?
> > >
> > >
> > > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <lu...@gmail.com>
> > wrote:
> > >
> > >> seems to work:  org.apache.deltaspike.proxy.im
> > >> pl.invocation.ManualInvocationContext@59fae308
> > >>
> > >> not sure the cache is actually working but I think it's not related
> with
> > >> DS. If possible release a version with the fix:
> > >>
> > >> @ApplicationScoped
> > >> @Specializes
> > >> public class CustomDeltaSpikeProxyInterceptorLookup extends
> > >> InterceptorLookup
> > >> {
> > >>
> > >>     @Override
> > >>     protected void addInterceptorBindings(BeanManager beanManager,
> > >> ArrayList<Annotation> bindings,
> > >>             Annotation[] declaredAnnotations)
> > >>     {
> > >>         for (Annotation annotation : declaredAnnotations)
> > >>         {
> > >>             if (bindings.contains(annotation))
> > >>             {
> > >>                 continue;
> > >>             }
> > >>
> > >>             Class<? extends Annotation> annotationType =
> > >> annotation.annotationType();
> > >>
> > >>           *  if (**beanManager.isInterceptorBinding(annotationType))*
> > >>             {
> > >>                 bindings.add(annotation);
> > >>             }
> > >>
> > >>             if (beanManager.isStereotype(annotationType)) *///fun
> part
> > >> is that here is well done ;)*
> > >>             {
> > >>                 for (Annotation subAnnotation :
> > >> annotationType.getDeclaredAnnotations())
> > >>                 {
> > >>                     if (bindings.contains(subAnnotation))
> > >>                     {
> > >>                         continue;
> > >>                     }
> > >>
> > >>                     if (subAnnotation.annotationType(
> > >> ).isAnnotationPresent(InterceptorBinding.class))
> > >>                     {
> > >>                         bindings.add(subAnnotation);
> > >>                     }
> > >>                 }
> > >>             }
> > >>         }
> > >>     }
> > >>
> > >> Thanks very much Thomas :)
> > >>
> > >>
> > >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com>
> > >> wrote:
> > >>
> > >>> found this one: org.apache.deltaspike.proxy.im
> > >>> pl.invocation.InterceptorLookup on version 1.8.0
> > >>>
> > >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com>
> > >>> wrote:
> > >>>
> > >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I
> have
> > >>>> to import?!
> > >>>>
> > >>>>
> > >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com>
> > >>>> wrote:
> > >>>>
> > >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
> > >>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
> > >>>>>
> > >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> > >>>>> andraschko.thomas@gmail.com> wrote:
> > >>>>>
> > >>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
> > >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
> > >>>>>>
> > >>>>>> Would be great if you can test it, create a issue and provide a
> > patch.
> > >>>>>>
> > >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>>>>>
> > >>>>>> > I have no idea if it's possible or not. Isn't any CDI expert on
> > the
> > >>>>>> mailing
> > >>>>>> > list that want to help? ;)
> > >>>>>> >
> > >>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject
> /spi/
> > >>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
> > >>>>>> ise.inject.spi
> > >>>>>> > .
> > >>>>>> > AnnotatedType- doesn't make the annotation visible to
> > >>>>>> (annotationType.
> > >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
> > >>>>>> runtime way
> > >>>>>> > to check it...
> > >>>>>> >
> > >>>>>> > BTW if a solutions is found can you make it available on 1.8.2?
> > >>>>>> >
> > >>>>>> >
> > >>>>>> >
> > >>>>>> >
> > >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> > >>>>>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>> >
> > >>>>>> > > Yep, they add the interceptorBinding dynamically:
> > >>>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
> > >>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
> > >>>>>> tations/cdi/
> > >>>>>> > > InterceptorExtension.java
> > >>>>>> > >
> > >>>>>> > > Just check our code here:
> > >>>>>> > > https://github.com/apache/deltaspike/blob/master/
> > >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
> > >>>>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLo
> ok
> > >>>>>> > up.java#L90
> > >>>>>> > >
> > >>>>>> > > This code would need ask CDI if this annotation is a
> interceptor
> > >>>>>> binding
> > >>>>>> > > (if possible, not sure if it's in the CDI API). Then your case
> > >>>>>> should
> > >>>>>> > work.
> > >>>>>> > >
> > >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <luisalves00@gmail.com
> >:
> > >>>>>> > >
> > >>>>>> > > > This is the reference implementation of the interceptors:
> > >>>>>> > > > https://github.com/jsr107/RI
> > >>>>>> > > > They have:
> > >>>>>> > > >
> > >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > >>>>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
> "
> > >>>>>> > > >        xsi:schemaLocation="
> > >>>>>> > > > http://java.sun.com/xml/ns/javaee
> > >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >>>>>> > > >     <interceptors>
> > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>> > > > CacheResultInterceptor</class>
> > >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> > >>>>>> > CachePutInterceptor</class>
> > >>>>>> > > >
> > >>>>>> > > > <class>org.jsr107.ri.annotatio
> ns.cdi.CacheRemoveEntryInterce
> > >>>>>> ptor</
> > >>>>>> > class>
> > >>>>>> > > >
> > >>>>>> > > > <class>org.jsr107.ri.annotatio
> ns.cdi.CacheRemoveAllIntercept
> > >>>>>> or</class>
> > >>>>>> > > >     </interceptors>
> > >>>>>> > > > </beans>
> > >>>>>> > > >
> > >>>>>> > > > and they have 2files with:
> > >>>>>> > > >
> > >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> > >>>>>> > > >
> > >>>>>> > > > and
> > >>>>>> > > >
> > >>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> > >>>>>> > > >
> > >>>>>> > > > The interceptors work on a normal cdi bean.
> > >>>>>> > > >
> > >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> > >>>>>> > > >
> > >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
> > >>>>>> > > > >
> > >>>>>> > > > > 1) @InterceptorBinding
> > >>>>>> > > > > 2) @Interceptors(..)
> > >>>>>> > > > >
> > >>>>>> > > > > We only support 1) currently.
> > >>>>>> > > > >
> > >>>>>> > > > > So i have currently no idea how @CacheResult will work
> even
> > a
> > >>>>>> normal
> > >>>>>> > > CDI
> > >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal"
> > CDI
> > >>>>>> way.
> > >>>>>> > > > >
> > >>>>>> > > > >
> > >>>>>> > > > >
> > >>>>>> > > > >
> > >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> > luisalves00@gmail.com
> > >>>>>> >:
> > >>>>>> > > > >
> > >>>>>> > > > > > Submitted: https://github.com/jsr107/
> > jsr107spec/issues/401
> > >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
> > >>>>>> > > > > >
> > >>>>>> > > > > >
> > >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
> > >>>>>> luisalves00@gmail.com
> > >>>>>> > >
> > >>>>>> > > > > wrote:
> > >>>>>> > > > > >
> > >>>>>> > > > > > > I suppose it's CDI capable.
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > Red Hat
> > >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >  * @author Gavin King
> > >>>>>> > > > > > >  * @author Pete Muir
> > >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> > >>>>>> > > > > > >  */
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > >>>>>> > > > > > > @Retention(RUNTIME)
> > >>>>>> > > > > > > @Documented
> > >>>>>> > > > > > > @NormalScope
> > >>>>>> > > > > > > @Inherited
> > >>>>>> > > > > > > public @interface ApplicationScoped {
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > }
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > what I don't understand is how DS look for the
> > >>>>>> interceptors? Can
> > >>>>>> > > you
> > >>>>>> > > > > > point
> > >>>>>> > > > > > > me out the code?
> > >>>>>> > > > > > > Isn't possible to look for all annotations even if
> they
> > >>>>>> don't
> > >>>>>> > have
> > >>>>>> > > > > > > @InterceptorBinding and then look for the registered
> > >>>>>> > interceptors?
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >
> > >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> > >>>>>> > luisalves00@gmail.com
> > >>>>>> > > >
> > >>>>>> > > > > > wrote:
> > >>>>>> > > > > > >
> > >>>>>> > > > > > >> I suppose it's CDI capable.
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
> > >>>>>> CacheResult is
> > >>>>>> > > > > actually
> > >>>>>> > > > > > >>> exactly a binding for the interceptor.
> > >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache
> > API
> > >>>>>> ;)
> > >>>>>> > > > > > >>>
> > >>>>>> > > > > > >>> Even there is a bridge or something available (
> > >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not
> > sure
> > >>>>>> if this
> > >>>>>> > > > would
> > >>>>>> > > > > > >>> work
> > >>>>>> > > > > > >>> with the limited ability to add interceptors to
> > partial
> > >>>>>> beans.
> > >>>>>> > > > > > >>>
> > >>>>>> > > > > > >>> I think the best solution for now is to create a own
> > >>>>>> binding.
> > >>>>>> > > > > > >>>
> > >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
> > >>>>>> luisalves00@gmail.com>:
> > >>>>>> > > > > > >>>
> > >>>>>> > > > > > >>> > uhm...that's not good :S
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> > the annotation is this one:
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> > https://static.javadoc.io/java
> > >>>>>> x.cache/cache-api/1.0.0/
> > >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> > is there a way that using that annotation we get
> the
> > >>>>>> > > interceptor
> > >>>>>> > > > to
> > >>>>>> > > > > > >>> work?
> > >>>>>> > > > > > >>> > (I can implement the interceptor myself....as I
> said
> > >>>>>> I cannot
> > >>>>>> > > > > modify
> > >>>>>> > > > > > >>> the
> > >>>>>> > > > > > >>> > annotation as it is javax packge)
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas
> Andraschko <
> > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>> > > Just to be clear: I have no idea how internally
> > >>>>>> CacheResult
> > >>>>>> > > > works
> > >>>>>> > > > > > >>> but our
> > >>>>>> > > > > > >>> > > partial beans only supports CDI interceptors by
> a
> > >>>>>> binding
> > >>>>>> > > > > > >>> > > (InterceptorBinding).
> > >>>>>> > > > > > >>> > > Everything else, like stated in the doc
> > >>>>>> (@Interceptors,
> > >>>>>> > > > > > @Intercepted,
> > >>>>>> > > > > > >>> > > @Decorator), is not supported.
> > >>>>>> > > > > > >>> > >
> > >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> > >>>>>> > > > > > >>> > > >:
> > >>>>>> > > > > > >>> > >
> > >>>>>> > > > > > >>> > > > In must not work without the
> interceptorbinding.
> > >>>>>> Do you
> > >>>>>> > > mean
> > >>>>>> > > > > that
> > >>>>>> > > > > > >>> it
> > >>>>>> > > > > > >>> > does
> > >>>>>> > > > > > >>> > > > work without?
> > >>>>>> > > > > > >>> > > >
> > >>>>>> > > > > > >>> > > >
> > >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves
> :
> > >>>>>> > > > > > >>> > > >
> > >>>>>> > > > > > >>> > > >> can you update your test to remove
> > >>>>>> @InterceptorBinding?
> > >>>>>> > > and
> > >>>>>> > > > > > check
> > >>>>>> > > > > > >>> if
> > >>>>>> > > > > > >>> > it
> > >>>>>> > > > > > >>> > > >> works?
> > >>>>>> > > > > > >>> > > >>
> > >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
> > standard
> > >>>>>> so I
> > >>>>>> > > don't
> > >>>>>> > > > > want
> > >>>>>> > > > > > >>> to
> > >>>>>> > > > > > >>> > > extend
> > >>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if
> this
> > >>>>>> is really
> > >>>>>> > > the
> > >>>>>> > > > > > >>> problem.
> > >>>>>> > > > > > >>> > > >>
> > >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>> > > > > > >>> > > >>
> > >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> > >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> > >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
> > >>>>>> > > > > > >>> > > >> > {
> > >>>>>> > > > > > >>> > > >> > }
> > >>>>>> > > > > > >>> > > >> >
> > >>>>>> > > > > > >>> > > >> > I suspect is this
> @InterceptorBinding....but
> > >>>>>> not 100%
> > >>>>>> > > > > > >>> sure....what
> > >>>>>> > > > > > >>> > is
> > >>>>>> > > > > > >>> > > >> the
> > >>>>>> > > > > > >>> > > >> > purpose of that?
> > >>>>>> > > > > > >>> > > >> >
> > >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís
> Alves <
> > >>>>>> > > > > > >>> luisalves00@gmail.com>
> > >>>>>> > > > > > >>> > > >> wrote:
> > >>>>>> > > > > > >>> > > >> >
> > >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with
> > the
> > >>>>>> > > > @CacheResult
> > >>>>>> > > > > > >>> > > interceptor
> > >>>>>> > > > > > >>> > > >> ;)
> > >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> > >>>>>> > > > > > >>> > > >> >>
> > >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
> > >>>>>> Andraschko <
> > >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > >>>>>> > > > > > >>> > > >> >>
> > >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is
> really
> > >>>>>> called
> > >>>>>> > ;)
> > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > >>>>>> > > > > > luisalves00@gmail.com
> > >>>>>> > > > > > >>> >:
> > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor
> declaration
> > >>>>>> of the
> > >>>>>> > > > > > interceptor
> > >>>>>> > > > > > >>> for
> > >>>>>> > > > > > >>> > > the
> > >>>>>> > > > > > >>> > > >> >>> web app
> > >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO
> it
> > >>>>>> should
> > >>>>>> > > work
> > >>>>>> > > > > for
> > >>>>>> > > > > > >>> the
> > >>>>>> > > > > > >>> > > cache
> > >>>>>> > > > > > >>> > > >> as
> > >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís
> > >>>>>> Alves <
> > >>>>>> > > > > > >>> > > luisalves00@gmail.com
> > >>>>>> > > > > > >>> > > >> >
> > >>>>>> > > > > > >>> > > >> >>> > wrote:
> > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact
> > is
> > >>>>>> a
> > >>>>>> > "copy"
> > >>>>>> > > of
> > >>>>>> > > > > > yours
> > >>>>>> > > > > > >>> > that
> > >>>>>> > > > > > >>> > > >> logs
> > >>>>>> > > > > > >>> > > >> >>> a
> > >>>>>> > > > > > >>> > > >> >>> > > line):
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> > >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > >>>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
> > >>>>>> implements
> > >>>>>> > > > > > Serializable
> > >>>>>> > > > > > >>> > > >> >>> > > {
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >     private static final long
> > >>>>>> serialVersionUID =
> > >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> > >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > >>>>>> > > > > > >>> > > >> >>> > >     public Object
> > >>>>>> interceptIt(InvocationContext
> > >>>>>> > > > > > >>> > > invocationContext)
> > >>>>>> > > > > > >>> > > >> >>> throws
> > >>>>>> > > > > > >>> > > >> >>> > > Exception
> > >>>>>> > > > > > >>> > > >> >>> > >     {
> > >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
> > >>>>>> > CustomInterceptorImpl
> > >>>>>> > > > was
> > >>>>>> > > > > > >>> > called");
> > >>>>>> > > > > > >>> > > >> >>> > >         return
> > >>>>>> invocationContext.proceed();
> > >>>>>> > > > > > >>> > > >> >>> > >     }
> > >>>>>> > > > > > >>> > > >> >>> > > }
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for
> > service
> > >>>>>> and
> > >>>>>> > repo
> > >>>>>> > > > > > layers):
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0"
> encoding="UTF-8"?>
> > >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="
> http://java.sun.com/xml
> > >>>>>> /ns/javaee
> > >>>>>> > "
> > >>>>>> > > > > > >>> xmlns:xsi="
> > >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
> > >>>>>> ma-instance"
> > >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > >>>>>> > > > > > java.sun.com/xml/ns/javaee
> > >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
> > >>>>>> aee/beans_1_0.xsd
> > >>>>>> > ">
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> > >>>>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
> > >>>>>> ons.cdi.
> > >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > >>>>>> > > > > > >>> > > >> >>> > >     ...
> > >>>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> > >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > </beans>
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer but
> > not
> > >>>>>> on the
> > >>>>>> > > > > > >>> @Repository :(
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM,
> > Thomas
> > >>>>>> > > Andraschko
> > >>>>>> > > > <
> > >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom
> interceptor
> > >>>>>> and check
> > >>>>>> > > if
> > >>>>>> > > > > it's
> > >>>>>> > > > > > >>> > > invoked?
> > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> > weld-2.0.0.Final
> > >>>>>> or
> > >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> > >>>>>> > > > > > >>> > > >> have a
> > >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test
> as
> > >>>>>> there is
> > >>>>>> > > > > > something
> > >>>>>> > > > > > >>> > > broken,
> > >>>>>> > > > > > >>> > > >> >>> as you
> > >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted
> before.
> > >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you
> > >>>>>> could
> > >>>>>> > > provide a
> > >>>>>> > > > > > >>> unittest
> > >>>>>> > > > > > >>> > > for
> > >>>>>> > > > > > >>> > > >> the
> > >>>>>> > > > > > >>> > > >> >>> > data
> > >>>>>> > > > > > >>> > > >> >>> > >> module.
> > >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by
> > >>>>>> myself.
> > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís
> Alves
> > <
> > >>>>>> > > > > > >>> luisalves00@gmail.com
> > >>>>>> > > > > > >>> > >:
> > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult
> on
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> > >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class
> SomeRepository
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure
> > what
> > >>>>>> I'm
> > >>>>>> > doing
> > >>>>>> > > > > > wrong.
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM,
> > >>>>>> Luís Alves
> > >>>>>> > <
> > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the
> CustomBaseRepository
> > >>>>>> for
> > >>>>>> > > > now...but
> > >>>>>> > > > > > >>> still
> > >>>>>> > > > > > >>> > > can't
> > >>>>>> > > > > > >>> > > >> >>> get the
> > >>>>>> > > > > > >>> > > >> >>> > >> > cache
> > >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
> > >>>>>> beans.xml:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
> > >>>>>> encoding="UTF-8"?>
> > >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> > http://java.sun.com/
> > >>>>>> > > > xml/ns/javaee"
> > >>>>>> > > > > > >>> > > xmlns:xsi="
> > >>>>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
> > >>>>>> ma-instance"
> > >>>>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> > >>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > >>>>>> > > > javaee/beans_1_0.xsd
> > >>>>>> > > > > ">
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > >>>>>> > > annotations.cdi.
> > >>>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > >>>>>> > > annotations.cdi.
> > >>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > >>>>>> > > > > > >>> > > >> >>> > >> tor</
> > >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>>  <class>org.jsr107.ri.annotati
> > >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > >>>>>> > > > > > >>> > > >> >>> > >> class>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45
> AM,
> > >>>>>> Luís
> > >>>>>> > Alves
> > >>>>>> > > <
> > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if
> they
> > >>>>>> are on
> > >>>>>> > the
> > >>>>>> > > > > > >>> bean.xml
> > >>>>>> > > > > > >>> > they
> > >>>>>> > > > > > >>> > > >> >>> should
> > >>>>>> > > > > > >>> > > >> >>> > >> works
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't
> > work.
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't
> > had
> > >>>>>> it
> > >>>>>> > > before)
> > >>>>>> > > > > > >>> getting:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class
> > class
> > >>>>>> > > > > > >>> CustomBaseRepository
> > >>>>>> > > > > > >>> > > >> >>> failed. Is
> > >>>>>> > > > > > >>> > > >> >>> > >> it
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid
> Entity? I
> > >>>>>> got this
> > >>>>>> > > > base
> > >>>>>> > > > > > >>> class
> > >>>>>> > > > > > >>> > for
> > >>>>>> > > > > > >>> > > >> some
> > >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
> > >>>>>> CustomBaseRepository
> > >>>>>> > > <E
> > >>>>>> > > > > > >>> extends
> > >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> > >>>>>> > AbstractEntityRepository<E,
> > >>>>>> > > K>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
> > >>>>>> supposed
> > >>>>>> > to
> > >>>>>> > > > work
> > >>>>>> > > > > > >>> with
> > >>>>>> > > > > > >>> > the
> > >>>>>> > > > > > >>> > > >> >>> Repos...
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23
> AM,
> > >>>>>> Thomas
> > >>>>>> > > > > > Andraschko
> > >>>>>> > > > > > >>> <
> > >>>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com>
> > >>>>>> wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> https://github.com/apache/delt
> > >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/
> > uc008
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00
> > Thomas
> > >>>>>> > > Andraschko
> > >>>>>> > > > <
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell
> > should
> > >>>>>> be
> > >>>>>> > > > supported
> > >>>>>> > > > > > but
> > >>>>>> > > > > > >>> only
> > >>>>>> > > > > > >>> > > via
> > >>>>>> > > > > > >>> > > >> >>> custom
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
> > >>>>>> @Intercepted
> > >>>>>> > and
> > >>>>>> > > > > > >>> @Decorator"
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00
> > Luís
> > >>>>>> Alves <
> > >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
> > >>>>>> @Repository is
> > >>>>>> > > > actually
> > >>>>>> > > > > a
> > >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > >>>>>> > > > > > >>> > > >> >>> > >> > and
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
> > >>>>>> Interceptors
> > >>>>>> > > applied
> > >>>>>> > > > > via
> > >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
> > >>>>>> supported by
> > >>>>>> > our
> > >>>>>> > > > > > proxies!
> > >>>>>> > > > > > >>> > > >> "...does
> > >>>>>> > > > > > >>> > > >> >>> it
> > >>>>>> > > > > > >>> > > >> >>> > >> means
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at
> 10:11
> > >>>>>> AM, Luís
> > >>>>>> > > > > Alves <
> > >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> > @ApplicationScoped
> > >>>>>> the
> > >>>>>> > > > > interceptor
> > >>>>>> > > > > > >>> is
> > >>>>>> > > > > > >>> > not
> > >>>>>> > > > > > >>> > > >> >>> working
> > >>>>>> > > > > > >>> > > >> >>> > :(
> > >>>>>> > > > > > >>> > > >> >>> > >> > can't
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
> > >>>>>> @Repository
> > >>>>>> > > > methods
> > >>>>>> > > > > > be
> > >>>>>> > > > > > >>> > > >> >>> intercepted?
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at
> > 9:53
> > >>>>>> AM,
> > >>>>>> > Luís
> > >>>>>> > > > > Alves
> > >>>>>> > > > > > <
> > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it
> > >>>>>> should be
> > >>>>>> > > > OK...I
> > >>>>>> > > > > > >>> guess
> > >>>>>> > > > > > >>> > it's
> > >>>>>> > > > > > >>> > > >> like
> > >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at
> > >>>>>> 9:44 AM,
> > >>>>>> > Luís
> > >>>>>> > > > > > Alves <
> > >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is
> @Dependent
> > >>>>>> > > scoped...and
> > >>>>>> > > > > > seems
> > >>>>>> > > > > > >>> > that
> > >>>>>> > > > > > >>> > > >> >>> > @Dependent
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > >>>>>> > > > @CacheResult(cacheName
> > >>>>>> > > > > =
> > >>>>>> > > > > > >>> > > >> "my-cache")
> > >>>>>> > > > > > >>> > > >> >>> > >> annotation
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some
> one
> > >>>>>> proposed
> > >>>>>> > > that
> > >>>>>> > > > > > >>> > @Repository
> > >>>>>> > > > > > >>> > > >> >>> > >> could/should
> > >>>>>> > > > > > >>> > > >> >>> > >> > be
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if
> > I
> > >>>>>> change
> > >>>>>> > > them
> > >>>>>> > > > > do
> > >>>>>> > > > > > I
> > >>>>>> > > > > > >>> have
> > >>>>>> > > > > > >>> > > to
> > >>>>>> > > > > > >>> > > >> >>> worry
> > >>>>>> > > > > > >>> > > >> >>> > >> with
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer
> is
> > >>>>>> the
> > >>>>>> > > > following:
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public
> EntityManager
> > >>>>>> get()
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
> > >>>>>> entityManager;
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
> > >>>>>> different EM
> > >>>>>> > > for
> > >>>>>> > > > > > each
> > >>>>>> > > > > > >>> HTTP
> > >>>>>> > > > > > >>> > > >> >>> request /
> > >>>>>> > > > > > >>> > > >> >>> > >> MDB
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > >>>>>> > > > @Scheduled(cronExpression
> > >>>>>> > > > > > >>> > > >> ="....")...am I
> > >>>>>> > > > > > >>> > > >> >>> > >> correct?
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >> > >
> > >>>>>> > > > > > >>> > > >> >>> > >> >
> > >>>>>> > > > > > >>> > > >> >>> > >>
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> > >
> > >>>>>> > > > > > >>> > > >> >>> >
> > >>>>>> > > > > > >>> > > >> >>>
> > >>>>>> > > > > > >>> > > >> >>
> > >>>>>> > > > > > >>> > > >> >>
> > >>>>>> > > > > > >>> > > >> >
> > >>>>>> > > > > > >>> > > >>
> > >>>>>> > > > > > >>> > > >
> > >>>>>> > > > > > >>> > >
> > >>>>>> > > > > > >>> >
> > >>>>>> > > > > > >>>
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >>
> > >>>>>> > > > > > >
> > >>>>>> > > > > >
> > >>>>>> > > > >
> > >>>>>> > > >
> > >>>>>> > >
> > >>>>>> >
> > >>>>>>
> > >>>>>
> > >>>>>
> > >>>>
> > >>>
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Would be great if you could create a issue + unittest, so i can fix it next
week.

Am Freitag, 20. April 2018 schrieb Luís Alves :

> I have to leave :( don't do any change until I can confirm everything ;(
>
> have a nice weekend.
>
> On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com> wrote:
>
> > well....I think we might have an issue with the proceed part:
> >
> >  try {
> >       //Call the annotated method
> >       result = this.proceed(invocation); <-- this is not calling my
> > method...I think is because the invocation is
> org.apache.deltaspike.proxy.
> > impl.invocation.ManualInvocationContext@69b38203 instead of my method :(
> >
> > any ideas?
> >
> >
> > On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> >> seems to work:  org.apache.deltaspike.proxy.im
> >> pl.invocation.ManualInvocationContext@59fae308
> >>
> >> not sure the cache is actually working but I think it's not related with
> >> DS. If possible release a version with the fix:
> >>
> >> @ApplicationScoped
> >> @Specializes
> >> public class CustomDeltaSpikeProxyInterceptorLookup extends
> >> InterceptorLookup
> >> {
> >>
> >>     @Override
> >>     protected void addInterceptorBindings(BeanManager beanManager,
> >> ArrayList<Annotation> bindings,
> >>             Annotation[] declaredAnnotations)
> >>     {
> >>         for (Annotation annotation : declaredAnnotations)
> >>         {
> >>             if (bindings.contains(annotation))
> >>             {
> >>                 continue;
> >>             }
> >>
> >>             Class<? extends Annotation> annotationType =
> >> annotation.annotationType();
> >>
> >>           *  if (**beanManager.isInterceptorBinding(annotationType))*
> >>             {
> >>                 bindings.add(annotation);
> >>             }
> >>
> >>             if (beanManager.isStereotype(annotationType)) *///fun part
> >> is that here is well done ;)*
> >>             {
> >>                 for (Annotation subAnnotation :
> >> annotationType.getDeclaredAnnotations())
> >>                 {
> >>                     if (bindings.contains(subAnnotation))
> >>                     {
> >>                         continue;
> >>                     }
> >>
> >>                     if (subAnnotation.annotationType(
> >> ).isAnnotationPresent(InterceptorBinding.class))
> >>                     {
> >>                         bindings.add(subAnnotation);
> >>                     }
> >>                 }
> >>             }
> >>         }
> >>     }
> >>
> >> Thanks very much Thomas :)
> >>
> >>
> >> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >>
> >>> found this one: org.apache.deltaspike.proxy.im
> >>> pl.invocation.InterceptorLookup on version 1.8.0
> >>>
> >>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com>
> >>> wrote:
> >>>
> >>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have
> >>>> to import?!
> >>>>
> >>>>
> >>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com>
> >>>> wrote:
> >>>>
> >>>>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
> >>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
> >>>>>
> >>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> >>>>> andraschko.thomas@gmail.com> wrote:
> >>>>>
> >>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
> >>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
> >>>>>>
> >>>>>> Would be great if you can test it, create a issue and provide a
> patch.
> >>>>>>
> >>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
> >>>>>>
> >>>>>> > I have no idea if it's possible or not. Isn't any CDI expert on
> the
> >>>>>> mailing
> >>>>>> > list that want to help? ;)
> >>>>>> >
> >>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
> >>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
> >>>>>> ise.inject.spi
> >>>>>> > .
> >>>>>> > AnnotatedType- doesn't make the annotation visible to
> >>>>>> (annotationType.
> >>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
> >>>>>> runtime way
> >>>>>> > to check it...
> >>>>>> >
> >>>>>> > BTW if a solutions is found can you make it available on 1.8.2?
> >>>>>> >
> >>>>>> >
> >>>>>> >
> >>>>>> >
> >>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> >>>>>> > andraschko.thomas@gmail.com> wrote:
> >>>>>> >
> >>>>>> > > Yep, they add the interceptorBinding dynamically:
> >>>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
> >>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
> >>>>>> tations/cdi/
> >>>>>> > > InterceptorExtension.java
> >>>>>> > >
> >>>>>> > > Just check our code here:
> >>>>>> > > https://github.com/apache/deltaspike/blob/master/
> >>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
> >>>>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
> >>>>>> > up.java#L90
> >>>>>> > >
> >>>>>> > > This code would need ask CDI if this annotation is a interceptor
> >>>>>> binding
> >>>>>> > > (if possible, not sure if it's in the CDI API). Then your case
> >>>>>> should
> >>>>>> > work.
> >>>>>> > >
> >>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>>>>> > >
> >>>>>> > > > This is the reference implementation of the interceptors:
> >>>>>> > > > https://github.com/jsr107/RI
> >>>>>> > > > They have:
> >>>>>> > > >
> >>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> >>>>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >>>>>> > > >        xsi:schemaLocation="
> >>>>>> > > > http://java.sun.com/xml/ns/javaee
> >>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >>>>>> > > >     <interceptors>
> >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> >>>>>> > > > CacheResultInterceptor</class>
> >>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
> >>>>>> > CachePutInterceptor</class>
> >>>>>> > > >
> >>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterce
> >>>>>> ptor</
> >>>>>> > class>
> >>>>>> > > >
> >>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
> >>>>>> or</class>
> >>>>>> > > >     </interceptors>
> >>>>>> > > > </beans>
> >>>>>> > > >
> >>>>>> > > > and they have 2files with:
> >>>>>> > > >
> >>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> >>>>>> > > >
> >>>>>> > > > and
> >>>>>> > > >
> >>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> >>>>>> > > >
> >>>>>> > > > The interceptors work on a normal cdi bean.
> >>>>>> > > >
> >>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> >>>>>> > > > andraschko.thomas@gmail.com> wrote:
> >>>>>> > > >
> >>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
> >>>>>> > > > >
> >>>>>> > > > > 1) @InterceptorBinding
> >>>>>> > > > > 2) @Interceptors(..)
> >>>>>> > > > >
> >>>>>> > > > > We only support 1) currently.
> >>>>>> > > > >
> >>>>>> > > > > So i have currently no idea how @CacheResult will work even
> a
> >>>>>> normal
> >>>>>> > > CDI
> >>>>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal"
> CDI
> >>>>>> way.
> >>>>>> > > > >
> >>>>>> > > > >
> >>>>>> > > > >
> >>>>>> > > > >
> >>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <
> luisalves00@gmail.com
> >>>>>> >:
> >>>>>> > > > >
> >>>>>> > > > > > Submitted: https://github.com/jsr107/
> jsr107spec/issues/401
> >>>>>> > > > > > I suppose they will tell the issue is from DS...:(
> >>>>>> > > > > >
> >>>>>> > > > > >
> >>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
> >>>>>> luisalves00@gmail.com
> >>>>>> > >
> >>>>>> > > > > wrote:
> >>>>>> > > > > >
> >>>>>> > > > > > > I suppose it's CDI capable.
> >>>>>> > > > > > >
> >>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> >>>>>> > > > > > >
> >>>>>> > > > > > > Red Hat
> >>>>>> > > > > > > : Pete Muir   <---  is on the expert group
> >>>>>> > > > > > >
> >>>>>> > > > > > >
> >>>>>> > > > > > >  * @author Gavin King
> >>>>>> > > > > > >  * @author Pete Muir
> >>>>>> > > > > > >  * @author Antoine Sabot-Durand
> >>>>>> > > > > > >  */
> >>>>>> > > > > > >
> >>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
> >>>>>> > > > > > > @Retention(RUNTIME)
> >>>>>> > > > > > > @Documented
> >>>>>> > > > > > > @NormalScope
> >>>>>> > > > > > > @Inherited
> >>>>>> > > > > > > public @interface ApplicationScoped {
> >>>>>> > > > > > >
> >>>>>> > > > > > > }
> >>>>>> > > > > > >
> >>>>>> > > > > > >
> >>>>>> > > > > > > what I don't understand is how DS look for the
> >>>>>> interceptors? Can
> >>>>>> > > you
> >>>>>> > > > > > point
> >>>>>> > > > > > > me out the code?
> >>>>>> > > > > > > Isn't possible to look for all annotations even if they
> >>>>>> don't
> >>>>>> > have
> >>>>>> > > > > > > @InterceptorBinding and then look for the registered
> >>>>>> > interceptors?
> >>>>>> > > > > > >
> >>>>>> > > > > > >
> >>>>>> > > > > > >
> >>>>>> > > > > > >
> >>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> >>>>>> > luisalves00@gmail.com
> >>>>>> > > >
> >>>>>> > > > > > wrote:
> >>>>>> > > > > > >
> >>>>>> > > > > > >> I suppose it's CDI capable.
> >>>>>> > > > > > >>
> >>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> >>>>>> > > > > > >>
> >>>>>> > > > > > >>
> >>>>>> > > > > > >>
> >>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> >>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
> >>>>>> > > > > > >>
> >>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
> >>>>>> CacheResult is
> >>>>>> > > > > actually
> >>>>>> > > > > > >>> exactly a binding for the interceptor.
> >>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache
> API
> >>>>>> ;)
> >>>>>> > > > > > >>>
> >>>>>> > > > > > >>> Even there is a bridge or something available (
> >>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not
> sure
> >>>>>> if this
> >>>>>> > > > would
> >>>>>> > > > > > >>> work
> >>>>>> > > > > > >>> with the limited ability to add interceptors to
> partial
> >>>>>> beans.
> >>>>>> > > > > > >>>
> >>>>>> > > > > > >>> I think the best solution for now is to create a own
> >>>>>> binding.
> >>>>>> > > > > > >>>
> >>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
> >>>>>> luisalves00@gmail.com>:
> >>>>>> > > > > > >>>
> >>>>>> > > > > > >>> > uhm...that's not good :S
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> > the annotation is this one:
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> > https://static.javadoc.io/java
> >>>>>> x.cache/cache-api/1.0.0/
> >>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> > is there a way that using that annotation we get the
> >>>>>> > > interceptor
> >>>>>> > > > to
> >>>>>> > > > > > >>> work?
> >>>>>> > > > > > >>> > (I can implement the interceptor myself....as I said
> >>>>>> I cannot
> >>>>>> > > > > modify
> >>>>>> > > > > > >>> the
> >>>>>> > > > > > >>> > annotation as it is javax packge)
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> >>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>> > > Just to be clear: I have no idea how internally
> >>>>>> CacheResult
> >>>>>> > > > works
> >>>>>> > > > > > >>> but our
> >>>>>> > > > > > >>> > > partial beans only supports CDI interceptors by a
> >>>>>> binding
> >>>>>> > > > > > >>> > > (InterceptorBinding).
> >>>>>> > > > > > >>> > > Everything else, like stated in the doc
> >>>>>> (@Interceptors,
> >>>>>> > > > > > @Intercepted,
> >>>>>> > > > > > >>> > > @Decorator), is not supported.
> >>>>>> > > > > > >>> > >
> >>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> >>>>>> > > > > > >>> > andraschko.thomas@gmail.com
> >>>>>> > > > > > >>> > > >:
> >>>>>> > > > > > >>> > >
> >>>>>> > > > > > >>> > > > In must not work without the interceptorbinding.
> >>>>>> Do you
> >>>>>> > > mean
> >>>>>> > > > > that
> >>>>>> > > > > > >>> it
> >>>>>> > > > > > >>> > does
> >>>>>> > > > > > >>> > > > work without?
> >>>>>> > > > > > >>> > > >
> >>>>>> > > > > > >>> > > >
> >>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> >>>>>> > > > > > >>> > > >
> >>>>>> > > > > > >>> > > >> can you update your test to remove
> >>>>>> @InterceptorBinding?
> >>>>>> > > and
> >>>>>> > > > > > check
> >>>>>> > > > > > >>> if
> >>>>>> > > > > > >>> > it
> >>>>>> > > > > > >>> > > >> works?
> >>>>>> > > > > > >>> > > >>
> >>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is
> standard
> >>>>>> so I
> >>>>>> > > don't
> >>>>>> > > > > want
> >>>>>> > > > > > >>> to
> >>>>>> > > > > > >>> > > extend
> >>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this
> >>>>>> is really
> >>>>>> > > the
> >>>>>> > > > > > >>> problem.
> >>>>>> > > > > > >>> > > >>
> >>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> >>>>>> > > > > > >>> luisalves00@gmail.com>
> >>>>>> > > > > > >>> > > >> wrote:
> >>>>>> > > > > > >>> > > >>
> >>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
> >>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> >>>>>> > > > > > >>> > > >> > // @InterceptorBinding
> >>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
> >>>>>> > > > > > >>> > > >> > {
> >>>>>> > > > > > >>> > > >> > }
> >>>>>> > > > > > >>> > > >> >
> >>>>>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but
> >>>>>> not 100%
> >>>>>> > > > > > >>> sure....what
> >>>>>> > > > > > >>> > is
> >>>>>> > > > > > >>> > > >> the
> >>>>>> > > > > > >>> > > >> > purpose of that?
> >>>>>> > > > > > >>> > > >> >
> >>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> >>>>>> > > > > > >>> luisalves00@gmail.com>
> >>>>>> > > > > > >>> > > >> wrote:
> >>>>>> > > > > > >>> > > >> >
> >>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with
> the
> >>>>>> > > > @CacheResult
> >>>>>> > > > > > >>> > > interceptor
> >>>>>> > > > > > >>> > > >> ;)
> >>>>>> > > > > > >>> > > >> >> ? to see if it works?
> >>>>>> > > > > > >>> > > >> >>
> >>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
> >>>>>> Andraschko <
> >>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> >>>>>> > > > > > >>> > > >> >>
> >>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
> >>>>>> called
> >>>>>> > ;)
> >>>>>> > > > > > >>> > > >> >>>
> >>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> >>>>>> > > > > > luisalves00@gmail.com
> >>>>>> > > > > > >>> >:
> >>>>>> > > > > > >>> > > >> >>>
> >>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration
> >>>>>> of the
> >>>>>> > > > > > interceptor
> >>>>>> > > > > > >>> for
> >>>>>> > > > > > >>> > > the
> >>>>>> > > > > > >>> > > >> >>> web app
> >>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
> >>>>>> should
> >>>>>> > > work
> >>>>>> > > > > for
> >>>>>> > > > > > >>> the
> >>>>>> > > > > > >>> > > cache
> >>>>>> > > > > > >>> > > >> as
> >>>>>> > > > > > >>> > > >> >>> > well. Any hint?
> >>>>>> > > > > > >>> > > >> >>> >
> >>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís
> >>>>>> Alves <
> >>>>>> > > > > > >>> > > luisalves00@gmail.com
> >>>>>> > > > > > >>> > > >> >
> >>>>>> > > > > > >>> > > >> >>> > wrote:
> >>>>>> > > > > > >>> > > >> >>> >
> >>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact
> is
> >>>>>> a
> >>>>>> > "copy"
> >>>>>> > > of
> >>>>>> > > > > > yours
> >>>>>> > > > > > >>> > that
> >>>>>> > > > > > >>> > > >> logs
> >>>>>> > > > > > >>> > > >> >>> a
> >>>>>> > > > > > >>> > > >> >>> > > line):
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > @Interceptor
> >>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
> >>>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
> >>>>>> implements
> >>>>>> > > > > > Serializable
> >>>>>> > > > > > >>> > > >> >>> > > {
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >     private static final long
> >>>>>> serialVersionUID =
> >>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >     @Inject
> >>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
> >>>>>> > > > > > >>> > > >> >>> > >     public Object
> >>>>>> interceptIt(InvocationContext
> >>>>>> > > > > > >>> > > invocationContext)
> >>>>>> > > > > > >>> > > >> >>> throws
> >>>>>> > > > > > >>> > > >> >>> > > Exception
> >>>>>> > > > > > >>> > > >> >>> > >     {
> >>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
> >>>>>> > CustomInterceptorImpl
> >>>>>> > > > was
> >>>>>> > > > > > >>> > called");
> >>>>>> > > > > > >>> > > >> >>> > >         return
> >>>>>> invocationContext.proceed();
> >>>>>> > > > > > >>> > > >> >>> > >     }
> >>>>>> > > > > > >>> > > >> >>> > > }
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for
> service
> >>>>>> and
> >>>>>> > repo
> >>>>>> > > > > > layers):
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> >>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
> >>>>>> /ns/javaee
> >>>>>> > "
> >>>>>> > > > > > >>> xmlns:xsi="
> >>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
> >>>>>> ma-instance"
> >>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> >>>>>> > > > > > java.sun.com/xml/ns/javaee
> >>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
> >>>>>> aee/beans_1_0.xsd
> >>>>>> > ">
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
> >>>>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
> >>>>>> ons.cdi.
> >>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> >>>>>> > > > > > >>> > > >> >>> > >     ...
> >>>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> >>>>>> > > > > > >>> > CustomInterceptorImpl</class>
> >>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > </beans>
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer but
> not
> >>>>>> on the
> >>>>>> > > > > > >>> @Repository :(
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM,
> Thomas
> >>>>>> > > Andraschko
> >>>>>> > > > <
> >>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor
> >>>>>> and check
> >>>>>> > > if
> >>>>>> > > > > it's
> >>>>>> > > > > > >>> > > invoked?
> >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use
> weld-2.0.0.Final
> >>>>>> or
> >>>>>> > > > > > >>> weld-2.0.0.SP1? We
> >>>>>> > > > > > >>> > > >> have a
> >>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
> >>>>>> there is
> >>>>>> > > > > > something
> >>>>>> > > > > > >>> > > broken,
> >>>>>> > > > > > >>> > > >> >>> as you
> >>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
> >>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you
> >>>>>> could
> >>>>>> > > provide a
> >>>>>> > > > > > >>> unittest
> >>>>>> > > > > > >>> > > for
> >>>>>> > > > > > >>> > > >> the
> >>>>>> > > > > > >>> > > >> >>> > data
> >>>>>> > > > > > >>> > > >> >>> > >> module.
> >>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by
> >>>>>> myself.
> >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves
> <
> >>>>>> > > > > > >>> luisalves00@gmail.com
> >>>>>> > > > > > >>> > >:
> >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> >>>>>> > > > > > >>> > > >> >>> > >> > @Repository
> >>>>>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure
> what
> >>>>>> I'm
> >>>>>> > doing
> >>>>>> > > > > > wrong.
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM,
> >>>>>> Luís Alves
> >>>>>> > <
> >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> >>>>>> > > > > > >>> > > >> >>> > >> > wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository
> >>>>>> for
> >>>>>> > > > now...but
> >>>>>> > > > > > >>> still
> >>>>>> > > > > > >>> > > can't
> >>>>>> > > > > > >>> > > >> >>> get the
> >>>>>> > > > > > >>> > > >> >>> > >> > cache
> >>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
> >>>>>> beans.xml:
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
> >>>>>> encoding="UTF-8"?>
> >>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="
> http://java.sun.com/
> >>>>>> > > > xml/ns/javaee"
> >>>>>> > > > > > >>> > > xmlns:xsi="
> >>>>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
> >>>>>> ma-instance"
> >>>>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> >>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
> >>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> >>>>>> > > > javaee/beans_1_0.xsd
> >>>>>> > > > > ">
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> >>>>>> > > annotations.cdi.
> >>>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> >>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> >>>>>> > > annotations.cdi.
> >>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>  <class>org.jsr107.ri.annotati
> >>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> >>>>>> > > > > > >>> > > >> >>> > >> tor</
> >>>>>> > > > > > >>> > > >> >>> > >> > > class>
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>>  <class>org.jsr107.ri.annotati
> >>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> >>>>>> > > > > > >>> > > >> >>> > >> class>
> >>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > > LA
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM,
> >>>>>> Luís
> >>>>>> > Alves
> >>>>>> > > <
> >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they
> >>>>>> are on
> >>>>>> > the
> >>>>>> > > > > > >>> bean.xml
> >>>>>> > > > > > >>> > they
> >>>>>> > > > > > >>> > > >> >>> should
> >>>>>> > > > > > >>> > > >> >>> > >> works
> >>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't
> work.
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't
> had
> >>>>>> it
> >>>>>> > > before)
> >>>>>> > > > > > >>> getting:
> >>>>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> >>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
> >>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class
> class
> >>>>>> > > > > > >>> CustomBaseRepository
> >>>>>> > > > > > >>> > > >> >>> failed. Is
> >>>>>> > > > > > >>> > > >> >>> > >> it
> >>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I
> >>>>>> got this
> >>>>>> > > > base
> >>>>>> > > > > > >>> class
> >>>>>> > > > > > >>> > for
> >>>>>> > > > > > >>> > > >> some
> >>>>>> > > > > > >>> > > >> >>> > >> > repositories
> >>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
> >>>>>> CustomBaseRepository
> >>>>>> > > <E
> >>>>>> > > > > > >>> extends
> >>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> >>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
> >>>>>> > AbstractEntityRepository<E,
> >>>>>> > > K>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> {
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
> >>>>>> supposed
> >>>>>> > to
> >>>>>> > > > work
> >>>>>> > > > > > >>> with
> >>>>>> > > > > > >>> > the
> >>>>>> > > > > > >>> > > >> >>> Repos...
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
> >>>>>> Thomas
> >>>>>> > > > > > Andraschko
> >>>>>> > > > > > >>> <
> >>>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com>
> >>>>>> wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> >>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> >>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/
> uc008
> >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00
> Thomas
> >>>>>> > > Andraschko
> >>>>>> > > > <
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell
> should
> >>>>>> be
> >>>>>> > > > supported
> >>>>>> > > > > > but
> >>>>>> > > > > > >>> only
> >>>>>> > > > > > >>> > > via
> >>>>>> > > > > > >>> > > >> >>> custom
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
> >>>>>> @Intercepted
> >>>>>> > and
> >>>>>> > > > > > >>> @Decorator"
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00
> Luís
> >>>>>> Alves <
> >>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
> >>>>>> @Repository is
> >>>>>> > > > actually
> >>>>>> > > > > a
> >>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
> >>>>>> > > > > > >>> > > >> >>> > >> > and
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> I
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
> >>>>>> Interceptors
> >>>>>> > > applied
> >>>>>> > > > > via
> >>>>>> > > > > > >>> > > >> >>> @Interceptors,
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
> >>>>>> supported by
> >>>>>> > our
> >>>>>> > > > > > proxies!
> >>>>>> > > > > > >>> > > >> "...does
> >>>>>> > > > > > >>> > > >> >>> it
> >>>>>> > > > > > >>> > > >> >>> > >> means
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> that
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11
> >>>>>> AM, Luís
> >>>>>> > > > > Alves <
> >>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with
> @ApplicationScoped
> >>>>>> the
> >>>>>> > > > > interceptor
> >>>>>> > > > > > >>> is
> >>>>>> > > > > > >>> > not
> >>>>>> > > > > > >>> > > >> >>> working
> >>>>>> > > > > > >>> > > >> >>> > :(
> >>>>>> > > > > > >>> > > >> >>> > >> > can't
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
> >>>>>> @Repository
> >>>>>> > > > methods
> >>>>>> > > > > > be
> >>>>>> > > > > > >>> > > >> >>> intercepted?
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at
> 9:53
> >>>>>> AM,
> >>>>>> > Luís
> >>>>>> > > > > Alves
> >>>>>> > > > > > <
> >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it
> >>>>>> should be
> >>>>>> > > > OK...I
> >>>>>> > > > > > >>> guess
> >>>>>> > > > > > >>> > it's
> >>>>>> > > > > > >>> > > >> like
> >>>>>> > > > > > >>> > > >> >>> > >> > Spring's
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at
> >>>>>> 9:44 AM,
> >>>>>> > Luís
> >>>>>> > > > > > Alves <
> >>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
> >>>>>> > > scoped...and
> >>>>>> > > > > > seems
> >>>>>> > > > > > >>> > that
> >>>>>> > > > > > >>> > > >> >>> > @Dependent
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> >>>>>> > > > @CacheResult(cacheName
> >>>>>> > > > > =
> >>>>>> > > > > > >>> > > >> "my-cache")
> >>>>>> > > > > > >>> > > >> >>> > >> annotation
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
> >>>>>> proposed
> >>>>>> > > that
> >>>>>> > > > > > >>> > @Repository
> >>>>>> > > > > > >>> > > >> >>> > >> could/should
> >>>>>> > > > > > >>> > > >> >>> > >> > be
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if
> I
> >>>>>> change
> >>>>>> > > them
> >>>>>> > > > > do
> >>>>>> > > > > > I
> >>>>>> > > > > > >>> have
> >>>>>> > > > > > >>> > > to
> >>>>>> > > > > > >>> > > >> >>> worry
> >>>>>> > > > > > >>> > > >> >>> > >> with
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is
> >>>>>> the
> >>>>>> > > > following:
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager
> >>>>>> get()
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
> >>>>>> entityManager;
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
> >>>>>> different EM
> >>>>>> > > for
> >>>>>> > > > > > each
> >>>>>> > > > > > >>> HTTP
> >>>>>> > > > > > >>> > > >> >>> request /
> >>>>>> > > > > > >>> > > >> >>> > >> MDB
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> >>>>>> > > > @Scheduled(cronExpression
> >>>>>> > > > > > >>> > > >> ="....")...am I
> >>>>>> > > > > > >>> > > >> >>> > >> correct?
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>> >
> >>>>>> > > > > > >>> > > >> >>> > >> > >>>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >>
> >>>>>> > > > > > >>> > > >> >>> > >> > >
> >>>>>> > > > > > >>> > > >> >>> > >> >
> >>>>>> > > > > > >>> > > >> >>> > >>
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> > >
> >>>>>> > > > > > >>> > > >> >>> >
> >>>>>> > > > > > >>> > > >> >>>
> >>>>>> > > > > > >>> > > >> >>
> >>>>>> > > > > > >>> > > >> >>
> >>>>>> > > > > > >>> > > >> >
> >>>>>> > > > > > >>> > > >>
> >>>>>> > > > > > >>> > > >
> >>>>>> > > > > > >>> > >
> >>>>>> > > > > > >>> >
> >>>>>> > > > > > >>>
> >>>>>> > > > > > >>
> >>>>>> > > > > > >>
> >>>>>> > > > > > >
> >>>>>> > > > > >
> >>>>>> > > > >
> >>>>>> > > >
> >>>>>> > >
> >>>>>> >
> >>>>>>
> >>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
I have to leave :( don't do any change until I can confirm everything ;(

have a nice weekend.

On Fri, Apr 20, 2018 at 5:12 PM, Luís Alves <lu...@gmail.com> wrote:

> well....I think we might have an issue with the proceed part:
>
>  try {
>       //Call the annotated method
>       result = this.proceed(invocation); <-- this is not calling my
> method...I think is because the invocation is org.apache.deltaspike.proxy.
> impl.invocation.ManualInvocationContext@69b38203 instead of my method :(
>
> any ideas?
>
>
> On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> seems to work:  org.apache.deltaspike.proxy.im
>> pl.invocation.ManualInvocationContext@59fae308
>>
>> not sure the cache is actually working but I think it's not related with
>> DS. If possible release a version with the fix:
>>
>> @ApplicationScoped
>> @Specializes
>> public class CustomDeltaSpikeProxyInterceptorLookup extends
>> InterceptorLookup
>> {
>>
>>     @Override
>>     protected void addInterceptorBindings(BeanManager beanManager,
>> ArrayList<Annotation> bindings,
>>             Annotation[] declaredAnnotations)
>>     {
>>         for (Annotation annotation : declaredAnnotations)
>>         {
>>             if (bindings.contains(annotation))
>>             {
>>                 continue;
>>             }
>>
>>             Class<? extends Annotation> annotationType =
>> annotation.annotationType();
>>
>>           *  if (**beanManager.isInterceptorBinding(annotationType))*
>>             {
>>                 bindings.add(annotation);
>>             }
>>
>>             if (beanManager.isStereotype(annotationType)) *///fun part
>> is that here is well done ;)*
>>             {
>>                 for (Annotation subAnnotation :
>> annotationType.getDeclaredAnnotations())
>>                 {
>>                     if (bindings.contains(subAnnotation))
>>                     {
>>                         continue;
>>                     }
>>
>>                     if (subAnnotation.annotationType(
>> ).isAnnotationPresent(InterceptorBinding.class))
>>                     {
>>                         bindings.add(subAnnotation);
>>                     }
>>                 }
>>             }
>>         }
>>     }
>>
>> Thanks very much Thomas :)
>>
>>
>> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> found this one: org.apache.deltaspike.proxy.im
>>> pl.invocation.InterceptorLookup on version 1.8.0
>>>
>>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com>
>>> wrote:
>>>
>>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have
>>>> to import?!
>>>>
>>>>
>>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com>
>>>> wrote:
>>>>
>>>>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
>>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>>>>>
>>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>>> andraschko.thomas@gmail.com> wrote:
>>>>>
>>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
>>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>>>>
>>>>>> Would be great if you can test it, create a issue and provide a patch.
>>>>>>
>>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>>
>>>>>> > I have no idea if it's possible or not. Isn't any CDI expert on the
>>>>>> mailing
>>>>>> > list that want to help? ;)
>>>>>> >
>>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
>>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
>>>>>> ise.inject.spi
>>>>>> > .
>>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>>>> (annotationType.
>>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
>>>>>> runtime way
>>>>>> > to check it...
>>>>>> >
>>>>>> > BTW if a solutions is found can you make it available on 1.8.2?
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>>> >
>>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
>>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
>>>>>> tations/cdi/
>>>>>> > > InterceptorExtension.java
>>>>>> > >
>>>>>> > > Just check our code here:
>>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>>>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
>>>>>> > up.java#L90
>>>>>> > >
>>>>>> > > This code would need ask CDI if this annotation is a interceptor
>>>>>> binding
>>>>>> > > (if possible, not sure if it's in the CDI API). Then your case
>>>>>> should
>>>>>> > work.
>>>>>> > >
>>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>>> > >
>>>>>> > > > This is the reference implementation of the interceptors:
>>>>>> > > > https://github.com/jsr107/RI
>>>>>> > > > They have:
>>>>>> > > >
>>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>>>> > > >        xsi:schemaLocation="
>>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>>>> > > >     <interceptors>
>>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>> > > > CacheResultInterceptor</class>
>>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>>> > CachePutInterceptor</class>
>>>>>> > > >
>>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterce
>>>>>> ptor</
>>>>>> > class>
>>>>>> > > >
>>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
>>>>>> or</class>
>>>>>> > > >     </interceptors>
>>>>>> > > > </beans>
>>>>>> > > >
>>>>>> > > > and they have 2files with:
>>>>>> > > >
>>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>>>> > > >
>>>>>> > > > and
>>>>>> > > >
>>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>>>>>> > > >
>>>>>> > > > The interceptors work on a normal cdi bean.
>>>>>> > > >
>>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>>>> > > >
>>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>>>>> > > > >
>>>>>> > > > > 1) @InterceptorBinding
>>>>>> > > > > 2) @Interceptors(..)
>>>>>> > > > >
>>>>>> > > > > We only support 1) currently.
>>>>>> > > > >
>>>>>> > > > > So i have currently no idea how @CacheResult will work even a
>>>>>> normal
>>>>>> > > CDI
>>>>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI
>>>>>> way.
>>>>>> > > > >
>>>>>> > > > >
>>>>>> > > > >
>>>>>> > > > >
>>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <luisalves00@gmail.com
>>>>>> >:
>>>>>> > > > >
>>>>>> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>>>>>> > > > > > I suppose they will tell the issue is from DS...:(
>>>>>> > > > > >
>>>>>> > > > > >
>>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>>>> luisalves00@gmail.com
>>>>>> > >
>>>>>> > > > > wrote:
>>>>>> > > > > >
>>>>>> > > > > > > I suppose it's CDI capable.
>>>>>> > > > > > >
>>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>>>> > > > > > >
>>>>>> > > > > > > Red Hat
>>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>>>> > > > > > >
>>>>>> > > > > > >
>>>>>> > > > > > >  * @author Gavin King
>>>>>> > > > > > >  * @author Pete Muir
>>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>>>> > > > > > >  */
>>>>>> > > > > > >
>>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>>>> > > > > > > @Retention(RUNTIME)
>>>>>> > > > > > > @Documented
>>>>>> > > > > > > @NormalScope
>>>>>> > > > > > > @Inherited
>>>>>> > > > > > > public @interface ApplicationScoped {
>>>>>> > > > > > >
>>>>>> > > > > > > }
>>>>>> > > > > > >
>>>>>> > > > > > >
>>>>>> > > > > > > what I don't understand is how DS look for the
>>>>>> interceptors? Can
>>>>>> > > you
>>>>>> > > > > > point
>>>>>> > > > > > > me out the code?
>>>>>> > > > > > > Isn't possible to look for all annotations even if they
>>>>>> don't
>>>>>> > have
>>>>>> > > > > > > @InterceptorBinding and then look for the registered
>>>>>> > interceptors?
>>>>>> > > > > > >
>>>>>> > > > > > >
>>>>>> > > > > > >
>>>>>> > > > > > >
>>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>>>> > luisalves00@gmail.com
>>>>>> > > >
>>>>>> > > > > > wrote:
>>>>>> > > > > > >
>>>>>> > > > > > >> I suppose it's CDI capable.
>>>>>> > > > > > >>
>>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>>>> > > > > > >>
>>>>>> > > > > > >>
>>>>>> > > > > > >>
>>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>>>> > > > > > >>
>>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
>>>>>> CacheResult is
>>>>>> > > > > actually
>>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache API
>>>>>> ;)
>>>>>> > > > > > >>>
>>>>>> > > > > > >>> Even there is a bridge or something available (
>>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure
>>>>>> if this
>>>>>> > > > would
>>>>>> > > > > > >>> work
>>>>>> > > > > > >>> with the limited ability to add interceptors to partial
>>>>>> beans.
>>>>>> > > > > > >>>
>>>>>> > > > > > >>> I think the best solution for now is to create a own
>>>>>> binding.
>>>>>> > > > > > >>>
>>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>>>> luisalves00@gmail.com>:
>>>>>> > > > > > >>>
>>>>>> > > > > > >>> > uhm...that's not good :S
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> > the annotation is this one:
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> > https://static.javadoc.io/java
>>>>>> x.cache/cache-api/1.0.0/
>>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> > is there a way that using that annotation we get the
>>>>>> > > interceptor
>>>>>> > > > to
>>>>>> > > > > > >>> work?
>>>>>> > > > > > >>> > (I can implement the interceptor myself....as I said
>>>>>> I cannot
>>>>>> > > > > modify
>>>>>> > > > > > >>> the
>>>>>> > > > > > >>> > annotation as it is javax packge)
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>> > > Just to be clear: I have no idea how internally
>>>>>> CacheResult
>>>>>> > > > works
>>>>>> > > > > > >>> but our
>>>>>> > > > > > >>> > > partial beans only supports CDI interceptors by a
>>>>>> binding
>>>>>> > > > > > >>> > > (InterceptorBinding).
>>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>>>> (@Interceptors,
>>>>>> > > > > > @Intercepted,
>>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>>>> > > > > > >>> > >
>>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>>>> > > > > > >>> > > >:
>>>>>> > > > > > >>> > >
>>>>>> > > > > > >>> > > > In must not work without the interceptorbinding.
>>>>>> Do you
>>>>>> > > mean
>>>>>> > > > > that
>>>>>> > > > > > >>> it
>>>>>> > > > > > >>> > does
>>>>>> > > > > > >>> > > > work without?
>>>>>> > > > > > >>> > > >
>>>>>> > > > > > >>> > > >
>>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>> > > > > > >>> > > >
>>>>>> > > > > > >>> > > >> can you update your test to remove
>>>>>> @InterceptorBinding?
>>>>>> > > and
>>>>>> > > > > > check
>>>>>> > > > > > >>> if
>>>>>> > > > > > >>> > it
>>>>>> > > > > > >>> > > >> works?
>>>>>> > > > > > >>> > > >>
>>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard
>>>>>> so I
>>>>>> > > don't
>>>>>> > > > > want
>>>>>> > > > > > >>> to
>>>>>> > > > > > >>> > > extend
>>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this
>>>>>> is really
>>>>>> > > the
>>>>>> > > > > > >>> problem.
>>>>>> > > > > > >>> > > >>
>>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>> > > > > > >>> > > >> wrote:
>>>>>> > > > > > >>> > > >>
>>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>>>>> > > > > > >>> > > >> > {
>>>>>> > > > > > >>> > > >> > }
>>>>>> > > > > > >>> > > >> >
>>>>>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but
>>>>>> not 100%
>>>>>> > > > > > >>> sure....what
>>>>>> > > > > > >>> > is
>>>>>> > > > > > >>> > > >> the
>>>>>> > > > > > >>> > > >> > purpose of that?
>>>>>> > > > > > >>> > > >> >
>>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>>> > > > > > >>> > > >> wrote:
>>>>>> > > > > > >>> > > >> >
>>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
>>>>>> > > > @CacheResult
>>>>>> > > > > > >>> > > interceptor
>>>>>> > > > > > >>> > > >> ;)
>>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>>>> > > > > > >>> > > >> >>
>>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
>>>>>> Andraschko <
>>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>>>>> > > > > > >>> > > >> >>
>>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
>>>>>> called
>>>>>> > ;)
>>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>>>>>> > > > > > luisalves00@gmail.com
>>>>>> > > > > > >>> >:
>>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration
>>>>>> of the
>>>>>> > > > > > interceptor
>>>>>> > > > > > >>> for
>>>>>> > > > > > >>> > > the
>>>>>> > > > > > >>> > > >> >>> web app
>>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
>>>>>> should
>>>>>> > > work
>>>>>> > > > > for
>>>>>> > > > > > >>> the
>>>>>> > > > > > >>> > > cache
>>>>>> > > > > > >>> > > >> as
>>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís
>>>>>> Alves <
>>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>>>> > > > > > >>> > > >> >
>>>>>> > > > > > >>> > > >> >>> > wrote:
>>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is
>>>>>> a
>>>>>> > "copy"
>>>>>> > > of
>>>>>> > > > > > yours
>>>>>> > > > > > >>> > that
>>>>>> > > > > > >>> > > >> logs
>>>>>> > > > > > >>> > > >> >>> a
>>>>>> > > > > > >>> > > >> >>> > > line):
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
>>>>>> implements
>>>>>> > > > > > Serializable
>>>>>> > > > > > >>> > > >> >>> > > {
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >     private static final long
>>>>>> serialVersionUID =
>>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>>>> interceptIt(InvocationContext
>>>>>> > > > > > >>> > > invocationContext)
>>>>>> > > > > > >>> > > >> >>> throws
>>>>>> > > > > > >>> > > >> >>> > > Exception
>>>>>> > > > > > >>> > > >> >>> > >     {
>>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>>>> > CustomInterceptorImpl
>>>>>> > > > was
>>>>>> > > > > > >>> > called");
>>>>>> > > > > > >>> > > >> >>> > >         return
>>>>>> invocationContext.proceed();
>>>>>> > > > > > >>> > > >> >>> > >     }
>>>>>> > > > > > >>> > > >> >>> > > }
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service
>>>>>> and
>>>>>> > repo
>>>>>> > > > > > layers):
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
>>>>>> /ns/javaee
>>>>>> > "
>>>>>> > > > > > >>> xmlns:xsi="
>>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSche
>>>>>> ma-instance"
>>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>>>>>> aee/beans_1_0.xsd
>>>>>> > ">
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
>>>>>> ons.cdi.
>>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>>>>> > > > > > >>> > > >> >>> > >     ...
>>>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer but not
>>>>>> on the
>>>>>> > > > > > >>> @Repository :(
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
>>>>>> > > Andraschko
>>>>>> > > > <
>>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor
>>>>>> and check
>>>>>> > > if
>>>>>> > > > > it's
>>>>>> > > > > > >>> > > invoked?
>>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final
>>>>>> or
>>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>>>> > > > > > >>> > > >> have a
>>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
>>>>>> there is
>>>>>> > > > > > something
>>>>>> > > > > > >>> > > broken,
>>>>>> > > > > > >>> > > >> >>> as you
>>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
>>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you
>>>>>> could
>>>>>> > > provide a
>>>>>> > > > > > >>> unittest
>>>>>> > > > > > >>> > > for
>>>>>> > > > > > >>> > > >> the
>>>>>> > > > > > >>> > > >> >>> > data
>>>>>> > > > > > >>> > > >> >>> > >> module.
>>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by
>>>>>> myself.
>>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>>>>>> > > > > > >>> luisalves00@gmail.com
>>>>>> > > > > > >>> > >:
>>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>>>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what
>>>>>> I'm
>>>>>> > doing
>>>>>> > > > > > wrong.
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM,
>>>>>> Luís Alves
>>>>>> > <
>>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository
>>>>>> for
>>>>>> > > > now...but
>>>>>> > > > > > >>> still
>>>>>> > > > > > >>> > > can't
>>>>>> > > > > > >>> > > >> >>> get the
>>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
>>>>>> beans.xml:
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>>>> encoding="UTF-8"?>
>>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
>>>>>> > > > xml/ns/javaee"
>>>>>> > > > > > >>> > > xmlns:xsi="
>>>>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
>>>>>> ma-instance"
>>>>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
>>>>>> > > > javaee/beans_1_0.xsd
>>>>>> > > > > ">
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>>>> > > annotations.cdi.
>>>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>>>> > > annotations.cdi.
>>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>  <class>org.jsr107.ri.annotati
>>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>>  <class>org.jsr107.ri.annotati
>>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>>>> > > > > > >>> > > >> >>> > >> class>
>>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM,
>>>>>> Luís
>>>>>> > Alves
>>>>>> > > <
>>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they
>>>>>> are on
>>>>>> > the
>>>>>> > > > > > >>> bean.xml
>>>>>> > > > > > >>> > they
>>>>>> > > > > > >>> > > >> >>> should
>>>>>> > > > > > >>> > > >> >>> > >> works
>>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had
>>>>>> it
>>>>>> > > before)
>>>>>> > > > > > >>> getting:
>>>>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
>>>>>> > > > > > >>> CustomBaseRepository
>>>>>> > > > > > >>> > > >> >>> failed. Is
>>>>>> > > > > > >>> > > >> >>> > >> it
>>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I
>>>>>> got this
>>>>>> > > > base
>>>>>> > > > > > >>> class
>>>>>> > > > > > >>> > for
>>>>>> > > > > > >>> > > >> some
>>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>>>> CustomBaseRepository
>>>>>> > > <E
>>>>>> > > > > > >>> extends
>>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>>>> > AbstractEntityRepository<E,
>>>>>> > > K>
>>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
>>>>>> supposed
>>>>>> > to
>>>>>> > > > work
>>>>>> > > > > > >>> with
>>>>>> > > > > > >>> > the
>>>>>> > > > > > >>> > > >> >>> Repos...
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
>>>>>> Thomas
>>>>>> > > > > > Andraschko
>>>>>> > > > > > >>> <
>>>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com>
>>>>>> wrote:
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
>>>>>> > > Andraschko
>>>>>> > > > <
>>>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should
>>>>>> be
>>>>>> > > > supported
>>>>>> > > > > > but
>>>>>> > > > > > >>> only
>>>>>> > > > > > >>> > > via
>>>>>> > > > > > >>> > > >> >>> custom
>>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>>>>>> @Intercepted
>>>>>> > and
>>>>>> > > > > > >>> @Decorator"
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
>>>>>> Alves <
>>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that
>>>>>> @Repository is
>>>>>> > > > actually
>>>>>> > > > > a
>>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>>>> > > > > > >>> > > >> >>> > >> > and
>>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
>>>>>> Interceptors
>>>>>> > > applied
>>>>>> > > > > via
>>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
>>>>>> supported by
>>>>>> > our
>>>>>> > > > > > proxies!
>>>>>> > > > > > >>> > > >> "...does
>>>>>> > > > > > >>> > > >> >>> it
>>>>>> > > > > > >>> > > >> >>> > >> means
>>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11
>>>>>> AM, Luís
>>>>>> > > > > Alves <
>>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped
>>>>>> the
>>>>>> > > > > interceptor
>>>>>> > > > > > >>> is
>>>>>> > > > > > >>> > not
>>>>>> > > > > > >>> > > >> >>> working
>>>>>> > > > > > >>> > > >> >>> > :(
>>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
>>>>>> @Repository
>>>>>> > > > methods
>>>>>> > > > > > be
>>>>>> > > > > > >>> > > >> >>> intercepted?
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53
>>>>>> AM,
>>>>>> > Luís
>>>>>> > > > > Alves
>>>>>> > > > > > <
>>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it
>>>>>> should be
>>>>>> > > > OK...I
>>>>>> > > > > > >>> guess
>>>>>> > > > > > >>> > it's
>>>>>> > > > > > >>> > > >> like
>>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at
>>>>>> 9:44 AM,
>>>>>> > Luís
>>>>>> > > > > > Alves <
>>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
>>>>>> > > scoped...and
>>>>>> > > > > > seems
>>>>>> > > > > > >>> > that
>>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>>>>> > > > @CacheResult(cacheName
>>>>>> > > > > =
>>>>>> > > > > > >>> > > >> "my-cache")
>>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
>>>>>> proposed
>>>>>> > > that
>>>>>> > > > > > >>> > @Repository
>>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>>>> > > > > > >>> > > >> >>> > >> > be
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
>>>>>> change
>>>>>> > > them
>>>>>> > > > > do
>>>>>> > > > > > I
>>>>>> > > > > > >>> have
>>>>>> > > > > > >>> > > to
>>>>>> > > > > > >>> > > >> >>> worry
>>>>>> > > > > > >>> > > >> >>> > >> with
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is
>>>>>> the
>>>>>> > > > following:
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager
>>>>>> get()
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>>>>> entityManager;
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
>>>>>> different EM
>>>>>> > > for
>>>>>> > > > > > each
>>>>>> > > > > > >>> HTTP
>>>>>> > > > > > >>> > > >> >>> request /
>>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>>>> > > > @Scheduled(cronExpression
>>>>>> > > > > > >>> > > >> ="....")...am I
>>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>>> > > > > > >>> > > >> >>> > >> >
>>>>>> > > > > > >>> > > >> >>> > >>
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> > >
>>>>>> > > > > > >>> > > >> >>> >
>>>>>> > > > > > >>> > > >> >>>
>>>>>> > > > > > >>> > > >> >>
>>>>>> > > > > > >>> > > >> >>
>>>>>> > > > > > >>> > > >> >
>>>>>> > > > > > >>> > > >>
>>>>>> > > > > > >>> > > >
>>>>>> > > > > > >>> > >
>>>>>> > > > > > >>> >
>>>>>> > > > > > >>>
>>>>>> > > > > > >>
>>>>>> > > > > > >>
>>>>>> > > > > > >
>>>>>> > > > > >
>>>>>> > > > >
>>>>>> > > >
>>>>>> > >
>>>>>> >
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
well....I think we might have an issue with the proceed part:

 try {
      //Call the annotated method
      result = this.proceed(invocation); <-- this is not calling my
method...I think is because the invocation is
org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext@69b38203
instead of my method :(

any ideas?


On Fri, Apr 20, 2018 at 5:07 PM, Luís Alves <lu...@gmail.com> wrote:

> seems to work:  org.apache.deltaspike.proxy.impl.invocation.
> ManualInvocationContext@59fae308
>
> not sure the cache is actually working but I think it's not related with
> DS. If possible release a version with the fix:
>
> @ApplicationScoped
> @Specializes
> public class CustomDeltaSpikeProxyInterceptorLookup extends
> InterceptorLookup
> {
>
>     @Override
>     protected void addInterceptorBindings(BeanManager beanManager,
> ArrayList<Annotation> bindings,
>             Annotation[] declaredAnnotations)
>     {
>         for (Annotation annotation : declaredAnnotations)
>         {
>             if (bindings.contains(annotation))
>             {
>                 continue;
>             }
>
>             Class<? extends Annotation> annotationType =
> annotation.annotationType();
>
>           *  if (**beanManager.isInterceptorBinding(annotationType))*
>             {
>                 bindings.add(annotation);
>             }
>
>             if (beanManager.isStereotype(annotationType)) *///fun part is
> that here is well done ;)*
>             {
>                 for (Annotation subAnnotation : annotationType.
> getDeclaredAnnotations())
>                 {
>                     if (bindings.contains(subAnnotation))
>                     {
>                         continue;
>                     }
>
>                     if (subAnnotation.annotationType(
> ).isAnnotationPresent(InterceptorBinding.class))
>                     {
>                         bindings.add(subAnnotation);
>                     }
>                 }
>             }
>         }
>     }
>
> Thanks very much Thomas :)
>
>
> On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> found this one: org.apache.deltaspike.proxy.im
>> pl.invocation.InterceptorLookup on version 1.8.0
>>
>> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have to
>>> import?!
>>>
>>>
>>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com>
>>> wrote:
>>>
>>>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
>>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>>>>
>>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>>> andraschko.thomas@gmail.com> wrote:
>>>>
>>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
>>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>>>
>>>>> Would be great if you can test it, create a issue and provide a patch.
>>>>>
>>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>>
>>>>> > I have no idea if it's possible or not. Isn't any CDI expert on the
>>>>> mailing
>>>>> > list that want to help? ;)
>>>>> >
>>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
>>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
>>>>> ise.inject.spi
>>>>> > .
>>>>> > AnnotatedType- doesn't make the annotation visible to
>>>>> (annotationType.
>>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
>>>>> runtime way
>>>>> > to check it...
>>>>> >
>>>>> > BTW if a solutions is found can you make it available on 1.8.2?
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>>> > andraschko.thomas@gmail.com> wrote:
>>>>> >
>>>>> > > Yep, they add the interceptorBinding dynamically:
>>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
>>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
>>>>> tations/cdi/
>>>>> > > InterceptorExtension.java
>>>>> > >
>>>>> > > Just check our code here:
>>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
>>>>> > up.java#L90
>>>>> > >
>>>>> > > This code would need ask CDI if this annotation is a interceptor
>>>>> binding
>>>>> > > (if possible, not sure if it's in the CDI API). Then your case
>>>>> should
>>>>> > work.
>>>>> > >
>>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>> > >
>>>>> > > > This is the reference implementation of the interceptors:
>>>>> > > > https://github.com/jsr107/RI
>>>>> > > > They have:
>>>>> > > >
>>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>>> > > >        xsi:schemaLocation="
>>>>> > > > http://java.sun.com/xml/ns/javaee
>>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>>> > > >     <interceptors>
>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>> > > > CacheResultInterceptor</class>
>>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>>> > CachePutInterceptor</class>
>>>>> > > >
>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterce
>>>>> ptor</
>>>>> > class>
>>>>> > > >
>>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
>>>>> or</class>
>>>>> > > >     </interceptors>
>>>>> > > > </beans>
>>>>> > > >
>>>>> > > > and they have 2files with:
>>>>> > > >
>>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>>> > > >
>>>>> > > > and
>>>>> > > >
>>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>>>>> > > >
>>>>> > > > The interceptors work on a normal cdi bean.
>>>>> > > >
>>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>>> > > >
>>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>>>> > > > >
>>>>> > > > > 1) @InterceptorBinding
>>>>> > > > > 2) @Interceptors(..)
>>>>> > > > >
>>>>> > > > > We only support 1) currently.
>>>>> > > > >
>>>>> > > > > So i have currently no idea how @CacheResult will work even a
>>>>> normal
>>>>> > > CDI
>>>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI
>>>>> way.
>>>>> > > > >
>>>>> > > > >
>>>>> > > > >
>>>>> > > > >
>>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>>> > > > >
>>>>> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>>>>> > > > > > I suppose they will tell the issue is from DS...:(
>>>>> > > > > >
>>>>> > > > > >
>>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>>> luisalves00@gmail.com
>>>>> > >
>>>>> > > > > wrote:
>>>>> > > > > >
>>>>> > > > > > > I suppose it's CDI capable.
>>>>> > > > > > >
>>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>>> > > > > > >
>>>>> > > > > > > Red Hat
>>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>>> > > > > > >
>>>>> > > > > > >
>>>>> > > > > > >  * @author Gavin King
>>>>> > > > > > >  * @author Pete Muir
>>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>>> > > > > > >  */
>>>>> > > > > > >
>>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>>> > > > > > > @Retention(RUNTIME)
>>>>> > > > > > > @Documented
>>>>> > > > > > > @NormalScope
>>>>> > > > > > > @Inherited
>>>>> > > > > > > public @interface ApplicationScoped {
>>>>> > > > > > >
>>>>> > > > > > > }
>>>>> > > > > > >
>>>>> > > > > > >
>>>>> > > > > > > what I don't understand is how DS look for the
>>>>> interceptors? Can
>>>>> > > you
>>>>> > > > > > point
>>>>> > > > > > > me out the code?
>>>>> > > > > > > Isn't possible to look for all annotations even if they
>>>>> don't
>>>>> > have
>>>>> > > > > > > @InterceptorBinding and then look for the registered
>>>>> > interceptors?
>>>>> > > > > > >
>>>>> > > > > > >
>>>>> > > > > > >
>>>>> > > > > > >
>>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>>> > luisalves00@gmail.com
>>>>> > > >
>>>>> > > > > > wrote:
>>>>> > > > > > >
>>>>> > > > > > >> I suppose it's CDI capable.
>>>>> > > > > > >>
>>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>>> > > > > > >>
>>>>> > > > > > >>
>>>>> > > > > > >>
>>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>>> > > > > > >>
>>>>> > > > > > >>> Puh, i wonder why they did it without binding.
>>>>> CacheResult is
>>>>> > > > > actually
>>>>> > > > > > >>> exactly a binding for the interceptor.
>>>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache API
>>>>> ;)
>>>>> > > > > > >>>
>>>>> > > > > > >>> Even there is a bridge or something available (
>>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure
>>>>> if this
>>>>> > > > would
>>>>> > > > > > >>> work
>>>>> > > > > > >>> with the limited ability to add interceptors to partial
>>>>> beans.
>>>>> > > > > > >>>
>>>>> > > > > > >>> I think the best solution for now is to create a own
>>>>> binding.
>>>>> > > > > > >>>
>>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>>> luisalves00@gmail.com>:
>>>>> > > > > > >>>
>>>>> > > > > > >>> > uhm...that's not good :S
>>>>> > > > > > >>> >
>>>>> > > > > > >>> > the annotation is this one:
>>>>> > > > > > >>> >
>>>>> > > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>>> > > > > > >>> >
>>>>> > > > > > >>> > is there a way that using that annotation we get the
>>>>> > > interceptor
>>>>> > > > to
>>>>> > > > > > >>> work?
>>>>> > > > > > >>> > (I can implement the interceptor myself....as I said I
>>>>> cannot
>>>>> > > > > modify
>>>>> > > > > > >>> the
>>>>> > > > > > >>> > annotation as it is javax packge)
>>>>> > > > > > >>> >
>>>>> > > > > > >>> >
>>>>> > > > > > >>> >
>>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>>> > > > > > >>> >
>>>>> > > > > > >>> > > Just to be clear: I have no idea how internally
>>>>> CacheResult
>>>>> > > > works
>>>>> > > > > > >>> but our
>>>>> > > > > > >>> > > partial beans only supports CDI interceptors by a
>>>>> binding
>>>>> > > > > > >>> > > (InterceptorBinding).
>>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>>> (@Interceptors,
>>>>> > > > > > @Intercepted,
>>>>> > > > > > >>> > > @Decorator), is not supported.
>>>>> > > > > > >>> > >
>>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>>> > > > > > >>> > > >:
>>>>> > > > > > >>> > >
>>>>> > > > > > >>> > > > In must not work without the interceptorbinding.
>>>>> Do you
>>>>> > > mean
>>>>> > > > > that
>>>>> > > > > > >>> it
>>>>> > > > > > >>> > does
>>>>> > > > > > >>> > > > work without?
>>>>> > > > > > >>> > > >
>>>>> > > > > > >>> > > >
>>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>> > > > > > >>> > > >
>>>>> > > > > > >>> > > >> can you update your test to remove
>>>>> @InterceptorBinding?
>>>>> > > and
>>>>> > > > > > check
>>>>> > > > > > >>> if
>>>>> > > > > > >>> > it
>>>>> > > > > > >>> > > >> works?
>>>>> > > > > > >>> > > >>
>>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard
>>>>> so I
>>>>> > > don't
>>>>> > > > > want
>>>>> > > > > > >>> to
>>>>> > > > > > >>> > > extend
>>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this is
>>>>> really
>>>>> > > the
>>>>> > > > > > >>> problem.
>>>>> > > > > > >>> > > >>
>>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>> > > > > > >>> > > >> wrote:
>>>>> > > > > > >>> > > >>
>>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>>>> > > > > > >>> > > >> > {
>>>>> > > > > > >>> > > >> > }
>>>>> > > > > > >>> > > >> >
>>>>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but
>>>>> not 100%
>>>>> > > > > > >>> sure....what
>>>>> > > > > > >>> > is
>>>>> > > > > > >>> > > >> the
>>>>> > > > > > >>> > > >> > purpose of that?
>>>>> > > > > > >>> > > >> >
>>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>>>>> > > > > > >>> luisalves00@gmail.com>
>>>>> > > > > > >>> > > >> wrote:
>>>>> > > > > > >>> > > >> >
>>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
>>>>> > > > @CacheResult
>>>>> > > > > > >>> > > interceptor
>>>>> > > > > > >>> > > >> ;)
>>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>>> > > > > > >>> > > >> >>
>>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
>>>>> Andraschko <
>>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>>>> > > > > > >>> > > >> >>
>>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
>>>>> called
>>>>> > ;)
>>>>> > > > > > >>> > > >> >>>
>>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>>>>> > > > > > luisalves00@gmail.com
>>>>> > > > > > >>> >:
>>>>> > > > > > >>> > > >> >>>
>>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of
>>>>> the
>>>>> > > > > > interceptor
>>>>> > > > > > >>> for
>>>>> > > > > > >>> > > the
>>>>> > > > > > >>> > > >> >>> web app
>>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
>>>>> should
>>>>> > > work
>>>>> > > > > for
>>>>> > > > > > >>> the
>>>>> > > > > > >>> > > cache
>>>>> > > > > > >>> > > >> as
>>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís
>>>>> Alves <
>>>>> > > > > > >>> > > luisalves00@gmail.com
>>>>> > > > > > >>> > > >> >
>>>>> > > > > > >>> > > >> >>> > wrote:
>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
>>>>> > "copy"
>>>>> > > of
>>>>> > > > > > yours
>>>>> > > > > > >>> > that
>>>>> > > > > > >>> > > >> logs
>>>>> > > > > > >>> > > >> >>> a
>>>>> > > > > > >>> > > >> >>> > > line):
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
>>>>> implements
>>>>> > > > > > Serializable
>>>>> > > > > > >>> > > >> >>> > > {
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >     private static final long
>>>>> serialVersionUID =
>>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>>> > > > > > >>> > > >> >>> > >     public Object
>>>>> interceptIt(InvocationContext
>>>>> > > > > > >>> > > invocationContext)
>>>>> > > > > > >>> > > >> >>> throws
>>>>> > > > > > >>> > > >> >>> > > Exception
>>>>> > > > > > >>> > > >> >>> > >     {
>>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>>> > CustomInterceptorImpl
>>>>> > > > was
>>>>> > > > > > >>> > called");
>>>>> > > > > > >>> > > >> >>> > >         return
>>>>> invocationContext.proceed();
>>>>> > > > > > >>> > > >> >>> > >     }
>>>>> > > > > > >>> > > >> >>> > > }
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service
>>>>> and
>>>>> > repo
>>>>> > > > > > layers):
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>>>>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
>>>>> /ns/javaee
>>>>> > "
>>>>> > > > > > >>> xmlns:xsi="
>>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance
>>>>> "
>>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>>>>> > > > > > java.sun.com/xml/ns/javaee
>>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>>>>> aee/beans_1_0.xsd
>>>>> > ">
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
>>>>> ons.cdi.
>>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>>>> > > > > > >>> > > >> >>> > >     ...
>>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > </beans>
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > It's called on the service layer but not
>>>>> on the
>>>>> > > > > > >>> @Repository :(
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
>>>>> > > Andraschko
>>>>> > > > <
>>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor
>>>>> and check
>>>>> > > if
>>>>> > > > > it's
>>>>> > > > > > >>> > > invoked?
>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final
>>>>> or
>>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>>> > > > > > >>> > > >> have a
>>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
>>>>> there is
>>>>> > > > > > something
>>>>> > > > > > >>> > > broken,
>>>>> > > > > > >>> > > >> >>> as you
>>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
>>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
>>>>> > > provide a
>>>>> > > > > > >>> unittest
>>>>> > > > > > >>> > > for
>>>>> > > > > > >>> > > >> the
>>>>> > > > > > >>> > > >> >>> > data
>>>>> > > > > > >>> > > >> >>> > >> module.
>>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by
>>>>> myself.
>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>>>>> > > > > > >>> luisalves00@gmail.com
>>>>> > > > > > >>> > >:
>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what
>>>>> I'm
>>>>> > doing
>>>>> > > > > > wrong.
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís
>>>>> Alves
>>>>> > <
>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository
>>>>> for
>>>>> > > > now...but
>>>>> > > > > > >>> still
>>>>> > > > > > >>> > > can't
>>>>> > > > > > >>> > > >> >>> get the
>>>>> > > > > > >>> > > >> >>> > >> > cache
>>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
>>>>> beans.xml:
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0"
>>>>> encoding="UTF-8"?>
>>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
>>>>> > > > xml/ns/javaee"
>>>>> > > > > > >>> > > xmlns:xsi="
>>>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
>>>>> ma-instance"
>>>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
>>>>> > > > javaee/beans_1_0.xsd
>>>>> > > > > ">
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>>> > > annotations.cdi.
>>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>>> > > annotations.cdi.
>>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>>> > > > > > >>> > > >> >>> > >> tor</
>>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>>> > > > > > >>> > > >> >>> > >> class>
>>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM,
>>>>> Luís
>>>>> > Alves
>>>>> > > <
>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they
>>>>> are on
>>>>> > the
>>>>> > > > > > >>> bean.xml
>>>>> > > > > > >>> > they
>>>>> > > > > > >>> > > >> >>> should
>>>>> > > > > > >>> > > >> >>> > >> works
>>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had
>>>>> it
>>>>> > > before)
>>>>> > > > > > >>> getting:
>>>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
>>>>> > > > > > >>> CustomBaseRepository
>>>>> > > > > > >>> > > >> >>> failed. Is
>>>>> > > > > > >>> > > >> >>> > >> it
>>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I
>>>>> got this
>>>>> > > > base
>>>>> > > > > > >>> class
>>>>> > > > > > >>> > for
>>>>> > > > > > >>> > > >> some
>>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>>> CustomBaseRepository
>>>>> > > <E
>>>>> > > > > > >>> extends
>>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>>> > AbstractEntityRepository<E,
>>>>> > > K>
>>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
>>>>> supposed
>>>>> > to
>>>>> > > > work
>>>>> > > > > > >>> with
>>>>> > > > > > >>> > the
>>>>> > > > > > >>> > > >> >>> Repos...
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
>>>>> Thomas
>>>>> > > > > > Andraschko
>>>>> > > > > > >>> <
>>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
>>>>> > > Andraschko
>>>>> > > > <
>>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should
>>>>> be
>>>>> > > > supported
>>>>> > > > > > but
>>>>> > > > > > >>> only
>>>>> > > > > > >>> > > via
>>>>> > > > > > >>> > > >> >>> custom
>>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>>>>> @Intercepted
>>>>> > and
>>>>> > > > > > >>> @Decorator"
>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
>>>>> Alves <
>>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository
>>>>> is
>>>>> > > > actually
>>>>> > > > > a
>>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>>> > > > > > >>> > > >> >>> > >> > and
>>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
>>>>> Interceptors
>>>>> > > applied
>>>>> > > > > via
>>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not
>>>>> supported by
>>>>> > our
>>>>> > > > > > proxies!
>>>>> > > > > > >>> > > >> "...does
>>>>> > > > > > >>> > > >> >>> it
>>>>> > > > > > >>> > > >> >>> > >> means
>>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11
>>>>> AM, Luís
>>>>> > > > > Alves <
>>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped
>>>>> the
>>>>> > > > > interceptor
>>>>> > > > > > >>> is
>>>>> > > > > > >>> > not
>>>>> > > > > > >>> > > >> >>> working
>>>>> > > > > > >>> > > >> >>> > :(
>>>>> > > > > > >>> > > >> >>> > >> > can't
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
>>>>> @Repository
>>>>> > > > methods
>>>>> > > > > > be
>>>>> > > > > > >>> > > >> >>> intercepted?
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53
>>>>> AM,
>>>>> > Luís
>>>>> > > > > Alves
>>>>> > > > > > <
>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it
>>>>> should be
>>>>> > > > OK...I
>>>>> > > > > > >>> guess
>>>>> > > > > > >>> > it's
>>>>> > > > > > >>> > > >> like
>>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44
>>>>> AM,
>>>>> > Luís
>>>>> > > > > > Alves <
>>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
>>>>> > > scoped...and
>>>>> > > > > > seems
>>>>> > > > > > >>> > that
>>>>> > > > > > >>> > > >> >>> > @Dependent
>>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>>>> > > > @CacheResult(cacheName
>>>>> > > > > =
>>>>> > > > > > >>> > > >> "my-cache")
>>>>> > > > > > >>> > > >> >>> > >> annotation
>>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
>>>>> proposed
>>>>> > > that
>>>>> > > > > > >>> > @Repository
>>>>> > > > > > >>> > > >> >>> > >> could/should
>>>>> > > > > > >>> > > >> >>> > >> > be
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
>>>>> change
>>>>> > > them
>>>>> > > > > do
>>>>> > > > > > I
>>>>> > > > > > >>> have
>>>>> > > > > > >>> > > to
>>>>> > > > > > >>> > > >> >>> worry
>>>>> > > > > > >>> > > >> >>> > >> with
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is
>>>>> the
>>>>> > > > following:
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager
>>>>> get()
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return
>>>>> entityManager;
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
>>>>> different EM
>>>>> > > for
>>>>> > > > > > each
>>>>> > > > > > >>> HTTP
>>>>> > > > > > >>> > > >> >>> request /
>>>>> > > > > > >>> > > >> >>> > >> MDB
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>>> > > > @Scheduled(cronExpression
>>>>> > > > > > >>> > > >> ="....")...am I
>>>>> > > > > > >>> > > >> >>> > >> correct?
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >>
>>>>> > > > > > >>> > > >> >>> > >> > >
>>>>> > > > > > >>> > > >> >>> > >> >
>>>>> > > > > > >>> > > >> >>> > >>
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> > >
>>>>> > > > > > >>> > > >> >>> >
>>>>> > > > > > >>> > > >> >>>
>>>>> > > > > > >>> > > >> >>
>>>>> > > > > > >>> > > >> >>
>>>>> > > > > > >>> > > >> >
>>>>> > > > > > >>> > > >>
>>>>> > > > > > >>> > > >
>>>>> > > > > > >>> > >
>>>>> > > > > > >>> >
>>>>> > > > > > >>>
>>>>> > > > > > >>
>>>>> > > > > > >>
>>>>> > > > > > >
>>>>> > > > > >
>>>>> > > > >
>>>>> > > >
>>>>> > >
>>>>> >
>>>>>
>>>>
>>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
seems to work:
org.apache.deltaspike.proxy.impl.invocation.ManualInvocationContext@59fae308

not sure the cache is actually working but I think it's not related with
DS. If possible release a version with the fix:

@ApplicationScoped
@Specializes
public class CustomDeltaSpikeProxyInterceptorLookup extends
InterceptorLookup
{

    @Override
    protected void addInterceptorBindings(BeanManager beanManager,
ArrayList<Annotation> bindings,
            Annotation[] declaredAnnotations)
    {
        for (Annotation annotation : declaredAnnotations)
        {
            if (bindings.contains(annotation))
            {
                continue;
            }

            Class<? extends Annotation> annotationType =
annotation.annotationType();

          *  if (**beanManager.isInterceptorBinding(annotationType))*
            {
                bindings.add(annotation);
            }

            if (beanManager.isStereotype(annotationType)) *///fun part is
that here is well done ;)*
            {
                for (Annotation subAnnotation :
annotationType.getDeclaredAnnotations())
                {
                    if (bindings.contains(subAnnotation))
                    {
                        continue;
                    }

                    if
(subAnnotation.annotationType().isAnnotationPresent(InterceptorBinding.class))
                    {
                        bindings.add(subAnnotation);
                    }
                }
            }
        }
    }

Thanks very much Thomas :)


On Fri, Apr 20, 2018 at 4:48 PM, Luís Alves <lu...@gmail.com> wrote:

> found this one: org.apache.deltaspike.proxy.impl.invocation.InterceptorLookup
> on version 1.8.0
>
> On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have to
>> import?!
>>
>>
>> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
>>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>>>
>>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>>> andraschko.thomas@gmail.com> wrote:
>>>
>>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
>>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>>
>>>> Would be great if you can test it, create a issue and provide a patch.
>>>>
>>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>>
>>>> > I have no idea if it's possible or not. Isn't any CDI expert on the
>>>> mailing
>>>> > list that want to help? ;)
>>>> >
>>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
>>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
>>>> ise.inject.spi
>>>> > .
>>>> > AnnotatedType- doesn't make the annotation visible to (annotationType.
>>>> > isAnnotationPresent(InterceptorBinding.class))...we need some
>>>> runtime way
>>>> > to check it...
>>>> >
>>>> > BTW if a solutions is found can you make it available on 1.8.2?
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>>> > andraschko.thomas@gmail.com> wrote:
>>>> >
>>>> > > Yep, they add the interceptorBinding dynamically:
>>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
>>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
>>>> tations/cdi/
>>>> > > InterceptorExtension.java
>>>> > >
>>>> > > Just check our code here:
>>>> > > https://github.com/apache/deltaspike/blob/master/
>>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
>>>> > up.java#L90
>>>> > >
>>>> > > This code would need ask CDI if this annotation is a interceptor
>>>> binding
>>>> > > (if possible, not sure if it's in the CDI API). Then your case
>>>> should
>>>> > work.
>>>> > >
>>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>> > >
>>>> > > > This is the reference implementation of the interceptors:
>>>> > > > https://github.com/jsr107/RI
>>>> > > > They have:
>>>> > > >
>>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> > > >        xsi:schemaLocation="
>>>> > > > http://java.sun.com/xml/ns/javaee
>>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>>> > > >     <interceptors>
>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>> > > > CacheResultInterceptor</class>
>>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>>> > CachePutInterceptor</class>
>>>> > > >
>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterce
>>>> ptor</
>>>> > class>
>>>> > > >
>>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
>>>> or</class>
>>>> > > >     </interceptors>
>>>> > > > </beans>
>>>> > > >
>>>> > > > and they have 2files with:
>>>> > > >
>>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>>> > > >
>>>> > > > and
>>>> > > >
>>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>>>> > > >
>>>> > > > The interceptors work on a normal cdi bean.
>>>> > > >
>>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>>> > > > andraschko.thomas@gmail.com> wrote:
>>>> > > >
>>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>>> > > > >
>>>> > > > > 1) @InterceptorBinding
>>>> > > > > 2) @Interceptors(..)
>>>> > > > >
>>>> > > > > We only support 1) currently.
>>>> > > > >
>>>> > > > > So i have currently no idea how @CacheResult will work even a
>>>> normal
>>>> > > CDI
>>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI
>>>> way.
>>>> > > > >
>>>> > > > >
>>>> > > > >
>>>> > > > >
>>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>> > > > >
>>>> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>>>> > > > > > I suppose they will tell the issue is from DS...:(
>>>> > > > > >
>>>> > > > > >
>>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>>> luisalves00@gmail.com
>>>> > >
>>>> > > > > wrote:
>>>> > > > > >
>>>> > > > > > > I suppose it's CDI capable.
>>>> > > > > > >
>>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>>> > > > > > >
>>>> > > > > > > Red Hat
>>>> > > > > > > : Pete Muir   <---  is on the expert group
>>>> > > > > > >
>>>> > > > > > >
>>>> > > > > > >  * @author Gavin King
>>>> > > > > > >  * @author Pete Muir
>>>> > > > > > >  * @author Antoine Sabot-Durand
>>>> > > > > > >  */
>>>> > > > > > >
>>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>>> > > > > > > @Retention(RUNTIME)
>>>> > > > > > > @Documented
>>>> > > > > > > @NormalScope
>>>> > > > > > > @Inherited
>>>> > > > > > > public @interface ApplicationScoped {
>>>> > > > > > >
>>>> > > > > > > }
>>>> > > > > > >
>>>> > > > > > >
>>>> > > > > > > what I don't understand is how DS look for the
>>>> interceptors? Can
>>>> > > you
>>>> > > > > > point
>>>> > > > > > > me out the code?
>>>> > > > > > > Isn't possible to look for all annotations even if they
>>>> don't
>>>> > have
>>>> > > > > > > @InterceptorBinding and then look for the registered
>>>> > interceptors?
>>>> > > > > > >
>>>> > > > > > >
>>>> > > > > > >
>>>> > > > > > >
>>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>>> > luisalves00@gmail.com
>>>> > > >
>>>> > > > > > wrote:
>>>> > > > > > >
>>>> > > > > > >> I suppose it's CDI capable.
>>>> > > > > > >>
>>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>>> > > > > > >>
>>>> > > > > > >>
>>>> > > > > > >>
>>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>>> > > > > > >>
>>>> > > > > > >>> Puh, i wonder why they did it without binding.
>>>> CacheResult is
>>>> > > > > actually
>>>> > > > > > >>> exactly a binding for the interceptor.
>>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
>>>> > > > > > >>>
>>>> > > > > > >>> Even there is a bridge or something available (
>>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure
>>>> if this
>>>> > > > would
>>>> > > > > > >>> work
>>>> > > > > > >>> with the limited ability to add interceptors to partial
>>>> beans.
>>>> > > > > > >>>
>>>> > > > > > >>> I think the best solution for now is to create a own
>>>> binding.
>>>> > > > > > >>>
>>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>>> luisalves00@gmail.com>:
>>>> > > > > > >>>
>>>> > > > > > >>> > uhm...that's not good :S
>>>> > > > > > >>> >
>>>> > > > > > >>> > the annotation is this one:
>>>> > > > > > >>> >
>>>> > > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>>> > > > > > >>> >
>>>> > > > > > >>> > is there a way that using that annotation we get the
>>>> > > interceptor
>>>> > > > to
>>>> > > > > > >>> work?
>>>> > > > > > >>> > (I can implement the interceptor myself....as I said I
>>>> cannot
>>>> > > > > modify
>>>> > > > > > >>> the
>>>> > > > > > >>> > annotation as it is javax packge)
>>>> > > > > > >>> >
>>>> > > > > > >>> >
>>>> > > > > > >>> >
>>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>>> > > > > > >>> >
>>>> > > > > > >>> > > Just to be clear: I have no idea how internally
>>>> CacheResult
>>>> > > > works
>>>> > > > > > >>> but our
>>>> > > > > > >>> > > partial beans only supports CDI interceptors by a
>>>> binding
>>>> > > > > > >>> > > (InterceptorBinding).
>>>> > > > > > >>> > > Everything else, like stated in the doc
>>>> (@Interceptors,
>>>> > > > > > @Intercepted,
>>>> > > > > > >>> > > @Decorator), is not supported.
>>>> > > > > > >>> > >
>>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>>>> > > > > > >>> > andraschko.thomas@gmail.com
>>>> > > > > > >>> > > >:
>>>> > > > > > >>> > >
>>>> > > > > > >>> > > > In must not work without the interceptorbinding. Do
>>>> you
>>>> > > mean
>>>> > > > > that
>>>> > > > > > >>> it
>>>> > > > > > >>> > does
>>>> > > > > > >>> > > > work without?
>>>> > > > > > >>> > > >
>>>> > > > > > >>> > > >
>>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>> > > > > > >>> > > >
>>>> > > > > > >>> > > >> can you update your test to remove
>>>> @InterceptorBinding?
>>>> > > and
>>>> > > > > > check
>>>> > > > > > >>> if
>>>> > > > > > >>> > it
>>>> > > > > > >>> > > >> works?
>>>> > > > > > >>> > > >>
>>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard
>>>> so I
>>>> > > don't
>>>> > > > > want
>>>> > > > > > >>> to
>>>> > > > > > >>> > > extend
>>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this is
>>>> really
>>>> > > the
>>>> > > > > > >>> problem.
>>>> > > > > > >>> > > >>
>>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>>>> > > > > > >>> luisalves00@gmail.com>
>>>> > > > > > >>> > > >> wrote:
>>>> > > > > > >>> > > >>
>>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>>> > > > > > >>> > > >> > // @InterceptorBinding
>>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>>> > > > > > >>> > > >> > {
>>>> > > > > > >>> > > >> > }
>>>> > > > > > >>> > > >> >
>>>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but not
>>>> 100%
>>>> > > > > > >>> sure....what
>>>> > > > > > >>> > is
>>>> > > > > > >>> > > >> the
>>>> > > > > > >>> > > >> > purpose of that?
>>>> > > > > > >>> > > >> >
>>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>>>> > > > > > >>> luisalves00@gmail.com>
>>>> > > > > > >>> > > >> wrote:
>>>> > > > > > >>> > > >> >
>>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
>>>> > > > @CacheResult
>>>> > > > > > >>> > > interceptor
>>>> > > > > > >>> > > >> ;)
>>>> > > > > > >>> > > >> >> ? to see if it works?
>>>> > > > > > >>> > > >> >>
>>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
>>>> Andraschko <
>>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>>> > > > > > >>> > > >> >>
>>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
>>>> called
>>>> > ;)
>>>> > > > > > >>> > > >> >>>
>>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>>>> > > > > > luisalves00@gmail.com
>>>> > > > > > >>> >:
>>>> > > > > > >>> > > >> >>>
>>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of
>>>> the
>>>> > > > > > interceptor
>>>> > > > > > >>> for
>>>> > > > > > >>> > > the
>>>> > > > > > >>> > > >> >>> web app
>>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
>>>> should
>>>> > > work
>>>> > > > > for
>>>> > > > > > >>> the
>>>> > > > > > >>> > > cache
>>>> > > > > > >>> > > >> as
>>>> > > > > > >>> > > >> >>> > well. Any hint?
>>>> > > > > > >>> > > >> >>> >
>>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves
>>>> <
>>>> > > > > > >>> > > luisalves00@gmail.com
>>>> > > > > > >>> > > >> >
>>>> > > > > > >>> > > >> >>> > wrote:
>>>> > > > > > >>> > > >> >>> >
>>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
>>>> > "copy"
>>>> > > of
>>>> > > > > > yours
>>>> > > > > > >>> > that
>>>> > > > > > >>> > > >> logs
>>>> > > > > > >>> > > >> >>> a
>>>> > > > > > >>> > > >> >>> > > line):
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > @Interceptor
>>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
>>>> implements
>>>> > > > > > Serializable
>>>> > > > > > >>> > > >> >>> > > {
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >     private static final long
>>>> serialVersionUID =
>>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >     @Inject
>>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>>> > > > > > >>> > > >> >>> > >     public Object
>>>> interceptIt(InvocationContext
>>>> > > > > > >>> > > invocationContext)
>>>> > > > > > >>> > > >> >>> throws
>>>> > > > > > >>> > > >> >>> > > Exception
>>>> > > > > > >>> > > >> >>> > >     {
>>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>>> > CustomInterceptorImpl
>>>> > > > was
>>>> > > > > > >>> > called");
>>>> > > > > > >>> > > >> >>> > >         return invocationContext.proceed();
>>>> > > > > > >>> > > >> >>> > >     }
>>>> > > > > > >>> > > >> >>> > > }
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service
>>>> and
>>>> > repo
>>>> > > > > > layers):
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>>>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
>>>> /ns/javaee
>>>> > "
>>>> > > > > > >>> xmlns:xsi="
>>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>>>> > > > > > java.sun.com/xml/ns/javaee
>>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>>>> aee/beans_1_0.xsd
>>>> > ">
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
>>>> ons.cdi.
>>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>>> > > > > > >>> > > >> >>> > >     ...
>>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>>>> > > > > > >>> > CustomInterceptorImpl</class>
>>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > </beans>
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > It's called on the service layer but not
>>>> on the
>>>> > > > > > >>> @Repository :(
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
>>>> > > Andraschko
>>>> > > > <
>>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor and
>>>> check
>>>> > > if
>>>> > > > > it's
>>>> > > > > > >>> > > invoked?
>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>>>> > > > > > >>> weld-2.0.0.SP1? We
>>>> > > > > > >>> > > >> have a
>>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
>>>> there is
>>>> > > > > > something
>>>> > > > > > >>> > > broken,
>>>> > > > > > >>> > > >> >>> as you
>>>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
>>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
>>>> > > provide a
>>>> > > > > > >>> unittest
>>>> > > > > > >>> > > for
>>>> > > > > > >>> > > >> the
>>>> > > > > > >>> > > >> >>> > data
>>>> > > > > > >>> > > >> >>> > >> module.
>>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>>>> > > > > > >>> luisalves00@gmail.com
>>>> > > > > > >>> > >:
>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>>> > > > > > >>> > > >> >>> > >> > @Repository
>>>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what
>>>> I'm
>>>> > doing
>>>> > > > > > wrong.
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís
>>>> Alves
>>>> > <
>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>>> > > > > > >>> > > >> >>> > >> > wrote:
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
>>>> > > > now...but
>>>> > > > > > >>> still
>>>> > > > > > >>> > > can't
>>>> > > > > > >>> > > >> >>> get the
>>>> > > > > > >>> > > >> >>> > >> > cache
>>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
>>>> beans.xml:
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
>>>> > > > xml/ns/javaee"
>>>> > > > > > >>> > > xmlns:xsi="
>>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
>>>> ma-instance"
>>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
>>>> > > > javaee/beans_1_0.xsd
>>>> > > > > ">
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>> > > annotations.cdi.
>>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>>> > > annotations.cdi.
>>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>>> > > > > > >>> > > >> >>> > >> tor</
>>>> > > > > > >>> > > >> >>> > >> > > class>
>>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>>> > > > > > >>> > > >> >>> > >> class>
>>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > > LA
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís
>>>> > Alves
>>>> > > <
>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they
>>>> are on
>>>> > the
>>>> > > > > > >>> bean.xml
>>>> > > > > > >>> > they
>>>> > > > > > >>> > > >> >>> should
>>>> > > > > > >>> > > >> >>> > >> works
>>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
>>>> > > before)
>>>> > > > > > >>> getting:
>>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
>>>> > > > > > >>> CustomBaseRepository
>>>> > > > > > >>> > > >> >>> failed. Is
>>>> > > > > > >>> > > >> >>> > >> it
>>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I
>>>> got this
>>>> > > > base
>>>> > > > > > >>> class
>>>> > > > > > >>> > for
>>>> > > > > > >>> > > >> some
>>>> > > > > > >>> > > >> >>> > >> > repositories
>>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>>> CustomBaseRepository
>>>> > > <E
>>>> > > > > > >>> extends
>>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>>> > AbstractEntityRepository<E,
>>>> > > K>
>>>> > > > > > >>> > > >> >>> > >> > >> {
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
>>>> supposed
>>>> > to
>>>> > > > work
>>>> > > > > > >>> with
>>>> > > > > > >>> > the
>>>> > > > > > >>> > > >> >>> Repos...
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
>>>> Thomas
>>>> > > > > > Andraschko
>>>> > > > > > >>> <
>>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
>>>> > > Andraschko
>>>> > > > <
>>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
>>>> > > > supported
>>>> > > > > > but
>>>> > > > > > >>> only
>>>> > > > > > >>> > > via
>>>> > > > > > >>> > > >> >>> custom
>>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>>>> @Intercepted
>>>> > and
>>>> > > > > > >>> @Decorator"
>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
>>>> Alves <
>>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository
>>>> is
>>>> > > > actually
>>>> > > > > a
>>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>>> > > > > > >>> > > >> >>> > >> > and
>>>> > > > > > >>> > > >> >>> > >> > >>> I
>>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI
>>>> Interceptors
>>>> > > applied
>>>> > > > > via
>>>> > > > > > >>> > > >> >>> @Interceptors,
>>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported
>>>> by
>>>> > our
>>>> > > > > > proxies!
>>>> > > > > > >>> > > >> "...does
>>>> > > > > > >>> > > >> >>> it
>>>> > > > > > >>> > > >> >>> > >> means
>>>> > > > > > >>> > > >> >>> > >> > >>> that
>>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11
>>>> AM, Luís
>>>> > > > > Alves <
>>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped
>>>> the
>>>> > > > > interceptor
>>>> > > > > > >>> is
>>>> > > > > > >>> > not
>>>> > > > > > >>> > > >> >>> working
>>>> > > > > > >>> > > >> >>> > :(
>>>> > > > > > >>> > > >> >>> > >> > can't
>>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
>>>> @Repository
>>>> > > > methods
>>>> > > > > > be
>>>> > > > > > >>> > > >> >>> intercepted?
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53
>>>> AM,
>>>> > Luís
>>>> > > > > Alves
>>>> > > > > > <
>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it
>>>> should be
>>>> > > > OK...I
>>>> > > > > > >>> guess
>>>> > > > > > >>> > it's
>>>> > > > > > >>> > > >> like
>>>> > > > > > >>> > > >> >>> > >> > Spring's
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44
>>>> AM,
>>>> > Luís
>>>> > > > > > Alves <
>>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
>>>> > > scoped...and
>>>> > > > > > seems
>>>> > > > > > >>> > that
>>>> > > > > > >>> > > >> >>> > @Dependent
>>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>>> > > > @CacheResult(cacheName
>>>> > > > > =
>>>> > > > > > >>> > > >> "my-cache")
>>>> > > > > > >>> > > >> >>> > >> annotation
>>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
>>>> proposed
>>>> > > that
>>>> > > > > > >>> > @Repository
>>>> > > > > > >>> > > >> >>> > >> could/should
>>>> > > > > > >>> > > >> >>> > >> > be
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
>>>> change
>>>> > > them
>>>> > > > > do
>>>> > > > > > I
>>>> > > > > > >>> have
>>>> > > > > > >>> > > to
>>>> > > > > > >>> > > >> >>> worry
>>>> > > > > > >>> > > >> >>> > >> with
>>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
>>>> > > > following:
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager
>>>> get()
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
>>>> different EM
>>>> > > for
>>>> > > > > > each
>>>> > > > > > >>> HTTP
>>>> > > > > > >>> > > >> >>> request /
>>>> > > > > > >>> > > >> >>> > >> MDB
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>>> > > > @Scheduled(cronExpression
>>>> > > > > > >>> > > >> ="....")...am I
>>>> > > > > > >>> > > >> >>> > >> correct?
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > > > >>> > > >> >>> > >> > >>> >
>>>> > > > > > >>> > > >> >>> > >> > >>>
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >>
>>>> > > > > > >>> > > >> >>> > >> > >
>>>> > > > > > >>> > > >> >>> > >> >
>>>> > > > > > >>> > > >> >>> > >>
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> > >
>>>> > > > > > >>> > > >> >>> >
>>>> > > > > > >>> > > >> >>>
>>>> > > > > > >>> > > >> >>
>>>> > > > > > >>> > > >> >>
>>>> > > > > > >>> > > >> >
>>>> > > > > > >>> > > >>
>>>> > > > > > >>> > > >
>>>> > > > > > >>> > >
>>>> > > > > > >>> >
>>>> > > > > > >>>
>>>> > > > > > >>
>>>> > > > > > >>
>>>> > > > > > >
>>>> > > > > >
>>>> > > > >
>>>> > > >
>>>> > >
>>>> >
>>>>
>>>
>>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
found this one:
org.apache.deltaspike.proxy.impl.invocation.InterceptorLookup on version
1.8.0

On Fri, Apr 20, 2018 at 4:43 PM, Luís Alves <lu...@gmail.com> wrote:

> where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have to
> import?!
>
>
> On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
>> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>>
>> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
>> andraschko.thomas@gmail.com> wrote:
>>
>>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/s
>>> pi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>>
>>> Would be great if you can test it, create a issue and provide a patch.
>>>
>>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>>
>>> > I have no idea if it's possible or not. Isn't any CDI expert on the
>>> mailing
>>> > list that want to help? ;)
>>> >
>>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
>>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
>>> ise.inject.spi
>>> > .
>>> > AnnotatedType- doesn't make the annotation visible to (annotationType.
>>> > isAnnotationPresent(InterceptorBinding.class))...we need some runtime
>>> way
>>> > to check it...
>>> >
>>> > BTW if a solutions is found can you make it available on 1.8.2?
>>> >
>>> >
>>> >
>>> >
>>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>>> > andraschko.thomas@gmail.com> wrote:
>>> >
>>> > > Yep, they add the interceptorBinding dynamically:
>>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
>>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
>>> tations/cdi/
>>> > > InterceptorExtension.java
>>> > >
>>> > > Just check our code here:
>>> > > https://github.com/apache/deltaspike/blob/master/
>>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
>>> > up.java#L90
>>> > >
>>> > > This code would need ask CDI if this annotation is a interceptor
>>> binding
>>> > > (if possible, not sure if it's in the CDI API). Then your case should
>>> > work.
>>> > >
>>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>> > >
>>> > > > This is the reference implementation of the interceptors:
>>> > > > https://github.com/jsr107/RI
>>> > > > They have:
>>> > > >
>>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> > > >        xsi:schemaLocation="
>>> > > > http://java.sun.com/xml/ns/javaee
>>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > > >     <interceptors>
>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > > CacheResultInterceptor</class>
>>> > > >         <class>org.jsr107.ri.annotations.cdi.
>>> > CachePutInterceptor</class>
>>> > > >
>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
>>> > class>
>>> > > >
>>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
>>> or</class>
>>> > > >     </interceptors>
>>> > > > </beans>
>>> > > >
>>> > > > and they have 2files with:
>>> > > >
>>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>>> > > >
>>> > > > and
>>> > > >
>>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>>> > > >
>>> > > > The interceptors work on a normal cdi bean.
>>> > > >
>>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>>> > > > andraschko.thomas@gmail.com> wrote:
>>> > > >
>>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>>> > > > >
>>> > > > > 1) @InterceptorBinding
>>> > > > > 2) @Interceptors(..)
>>> > > > >
>>> > > > > We only support 1) currently.
>>> > > > >
>>> > > > > So i have currently no idea how @CacheResult will work even a
>>> normal
>>> > > CDI
>>> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI
>>> way.
>>> > > > >
>>> > > > >
>>> > > > >
>>> > > > >
>>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>> > > > >
>>> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>>> > > > > > I suppose they will tell the issue is from DS...:(
>>> > > > > >
>>> > > > > >
>>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>>> luisalves00@gmail.com
>>> > >
>>> > > > > wrote:
>>> > > > > >
>>> > > > > > > I suppose it's CDI capable.
>>> > > > > > >
>>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>>> > > > > > >
>>> > > > > > > Red Hat
>>> > > > > > > : Pete Muir   <---  is on the expert group
>>> > > > > > >
>>> > > > > > >
>>> > > > > > >  * @author Gavin King
>>> > > > > > >  * @author Pete Muir
>>> > > > > > >  * @author Antoine Sabot-Durand
>>> > > > > > >  */
>>> > > > > > >
>>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>>> > > > > > > @Retention(RUNTIME)
>>> > > > > > > @Documented
>>> > > > > > > @NormalScope
>>> > > > > > > @Inherited
>>> > > > > > > public @interface ApplicationScoped {
>>> > > > > > >
>>> > > > > > > }
>>> > > > > > >
>>> > > > > > >
>>> > > > > > > what I don't understand is how DS look for the interceptors?
>>> Can
>>> > > you
>>> > > > > > point
>>> > > > > > > me out the code?
>>> > > > > > > Isn't possible to look for all annotations even if they don't
>>> > have
>>> > > > > > > @InterceptorBinding and then look for the registered
>>> > interceptors?
>>> > > > > > >
>>> > > > > > >
>>> > > > > > >
>>> > > > > > >
>>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>>> > luisalves00@gmail.com
>>> > > >
>>> > > > > > wrote:
>>> > > > > > >
>>> > > > > > >> I suppose it's CDI capable.
>>> > > > > > >>
>>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>>> > > > > > >>
>>> > > > > > >>
>>> > > > > > >>
>>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>>> > > > > > >>
>>> > > > > > >>> Puh, i wonder why they did it without binding. CacheResult
>>> is
>>> > > > > actually
>>> > > > > > >>> exactly a binding for the interceptor.
>>> > > > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
>>> > > > > > >>>
>>> > > > > > >>> Even there is a bridge or something available (
>>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if
>>> this
>>> > > > would
>>> > > > > > >>> work
>>> > > > > > >>> with the limited ability to add interceptors to partial
>>> beans.
>>> > > > > > >>>
>>> > > > > > >>> I think the best solution for now is to create a own
>>> binding.
>>> > > > > > >>>
>>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>>> luisalves00@gmail.com>:
>>> > > > > > >>>
>>> > > > > > >>> > uhm...that's not good :S
>>> > > > > > >>> >
>>> > > > > > >>> > the annotation is this one:
>>> > > > > > >>> >
>>> > > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>>> > > > > > >>> >
>>> > > > > > >>> > is there a way that using that annotation we get the
>>> > > interceptor
>>> > > > to
>>> > > > > > >>> work?
>>> > > > > > >>> > (I can implement the interceptor myself....as I said I
>>> cannot
>>> > > > > modify
>>> > > > > > >>> the
>>> > > > > > >>> > annotation as it is javax packge)
>>> > > > > > >>> >
>>> > > > > > >>> >
>>> > > > > > >>> >
>>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>>> > > > > > >>> >
>>> > > > > > >>> > > Just to be clear: I have no idea how internally
>>> CacheResult
>>> > > > works
>>> > > > > > >>> but our
>>> > > > > > >>> > > partial beans only supports CDI interceptors by a
>>> binding
>>> > > > > > >>> > > (InterceptorBinding).
>>> > > > > > >>> > > Everything else, like stated in the doc (@Interceptors,
>>> > > > > > @Intercepted,
>>> > > > > > >>> > > @Decorator), is not supported.
>>> > > > > > >>> > >
>>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>>> > > > > > >>> > andraschko.thomas@gmail.com
>>> > > > > > >>> > > >:
>>> > > > > > >>> > >
>>> > > > > > >>> > > > In must not work without the interceptorbinding. Do
>>> you
>>> > > mean
>>> > > > > that
>>> > > > > > >>> it
>>> > > > > > >>> > does
>>> > > > > > >>> > > > work without?
>>> > > > > > >>> > > >
>>> > > > > > >>> > > >
>>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>> > > > > > >>> > > >
>>> > > > > > >>> > > >> can you update your test to remove
>>> @InterceptorBinding?
>>> > > and
>>> > > > > > check
>>> > > > > > >>> if
>>> > > > > > >>> > it
>>> > > > > > >>> > > >> works?
>>> > > > > > >>> > > >>
>>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard so
>>> I
>>> > > don't
>>> > > > > want
>>> > > > > > >>> to
>>> > > > > > >>> > > extend
>>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this is
>>> really
>>> > > the
>>> > > > > > >>> problem.
>>> > > > > > >>> > > >>
>>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>>> > > > > > >>> luisalves00@gmail.com>
>>> > > > > > >>> > > >> wrote:
>>> > > > > > >>> > > >>
>>> > > > > > >>> > > >> > @Retention(RUNTIME)
>>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>>> > > > > > >>> > > >> > // @InterceptorBinding
>>> > > > > > >>> > > >> > public @interface CustomInterceptor
>>> > > > > > >>> > > >> > {
>>> > > > > > >>> > > >> > }
>>> > > > > > >>> > > >> >
>>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but not
>>> 100%
>>> > > > > > >>> sure....what
>>> > > > > > >>> > is
>>> > > > > > >>> > > >> the
>>> > > > > > >>> > > >> > purpose of that?
>>> > > > > > >>> > > >> >
>>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>>> > > > > > >>> luisalves00@gmail.com>
>>> > > > > > >>> > > >> wrote:
>>> > > > > > >>> > > >> >
>>> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
>>> > > > @CacheResult
>>> > > > > > >>> > > interceptor
>>> > > > > > >>> > > >> ;)
>>> > > > > > >>> > > >> >> ? to see if it works?
>>> > > > > > >>> > > >> >>
>>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
>>> Andraschko <
>>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>> > > > > > >>> > > >> >>
>>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
>>> called
>>> > ;)
>>> > > > > > >>> > > >> >>>
>>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>>> > > > > > luisalves00@gmail.com
>>> > > > > > >>> >:
>>> > > > > > >>> > > >> >>>
>>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of
>>> the
>>> > > > > > interceptor
>>> > > > > > >>> for
>>> > > > > > >>> > > the
>>> > > > > > >>> > > >> >>> web app
>>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
>>> should
>>> > > work
>>> > > > > for
>>> > > > > > >>> the
>>> > > > > > >>> > > cache
>>> > > > > > >>> > > >> as
>>> > > > > > >>> > > >> >>> > well. Any hint?
>>> > > > > > >>> > > >> >>> >
>>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
>>> > > > > > >>> > > luisalves00@gmail.com
>>> > > > > > >>> > > >> >
>>> > > > > > >>> > > >> >>> > wrote:
>>> > > > > > >>> > > >> >>> >
>>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
>>> > "copy"
>>> > > of
>>> > > > > > yours
>>> > > > > > >>> > that
>>> > > > > > >>> > > >> logs
>>> > > > > > >>> > > >> >>> a
>>> > > > > > >>> > > >> >>> > > line):
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > @Interceptor
>>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl
>>> implements
>>> > > > > > Serializable
>>> > > > > > >>> > > >> >>> > > {
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >     private static final long
>>> serialVersionUID =
>>> > > > > > >>> > > >> >>> 7327752605570037403L;
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >     @Inject
>>> > > > > > >>> > > >> >>> > >     private Logger logger;
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>>> > > > > > >>> > > >> >>> > >     public Object
>>> interceptIt(InvocationContext
>>> > > > > > >>> > > invocationContext)
>>> > > > > > >>> > > >> >>> throws
>>> > > > > > >>> > > >> >>> > > Exception
>>> > > > > > >>> > > >> >>> > >     {
>>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>>> > CustomInterceptorImpl
>>> > > > was
>>> > > > > > >>> > called");
>>> > > > > > >>> > > >> >>> > >         return invocationContext.proceed();
>>> > > > > > >>> > > >> >>> > >     }
>>> > > > > > >>> > > >> >>> > > }
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service and
>>> > repo
>>> > > > > > layers):
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
>>> /ns/javaee
>>> > "
>>> > > > > > >>> xmlns:xsi="
>>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>>> > > > > > java.sun.com/xml/ns/javaee
>>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>>> aee/beans_1_0.xsd
>>> > ">
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >     <interceptors>
>>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
>>> ons.cdi.
>>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>>> > > > > > >>> > > >> >>> > >     ...
>>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>>> > > > > > >>> > CustomInterceptorImpl</class>
>>> > > > > > >>> > > >> >>> > >     </interceptors>
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > </beans>
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > It's called on the service layer but not on
>>> the
>>> > > > > > >>> @Repository :(
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
>>> > > Andraschko
>>> > > > <
>>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor and
>>> check
>>> > > if
>>> > > > > it's
>>> > > > > > >>> > > invoked?
>>> > > > > > >>> > > >> >>> > >>
>>> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>>> > > > > > >>> weld-2.0.0.SP1? We
>>> > > > > > >>> > > >> have a
>>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
>>> there is
>>> > > > > > something
>>> > > > > > >>> > > broken,
>>> > > > > > >>> > > >> >>> as you
>>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
>>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
>>> > > provide a
>>> > > > > > >>> unittest
>>> > > > > > >>> > > for
>>> > > > > > >>> > > >> the
>>> > > > > > >>> > > >> >>> > data
>>> > > > > > >>> > > >> >>> > >> module.
>>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
>>> > > > > > >>> > > >> >>> > >>
>>> > > > > > >>> > > >> >>> > >>
>>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>>> > > > > > >>> luisalves00@gmail.com
>>> > > > > > >>> > >:
>>> > > > > > >>> > > >> >>> > >>
>>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>>> > > > > > >>> > > >> >>> > >> > @Repository
>>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm
>>> > doing
>>> > > > > > wrong.
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís
>>> Alves
>>> > <
>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>>> > > > > > >>> > > >> >>> > >> > wrote:
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
>>> > > > now...but
>>> > > > > > >>> still
>>> > > > > > >>> > > can't
>>> > > > > > >>> > > >> >>> get the
>>> > > > > > >>> > > >> >>> > >> > cache
>>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
>>> beans.xml:
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
>>> > > > xml/ns/javaee"
>>> > > > > > >>> > > xmlns:xsi="
>>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
>>> ma-instance"
>>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>>> > > > > > >>> > java.sun.com/xml/ns/javaee
>>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
>>> > > > javaee/beans_1_0.xsd
>>> > > > > ">
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>> > > annotations.cdi.
>>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>>> > > annotations.cdi.
>>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>>> > > > > > >>> > > >> >>> > >> > > class>
>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>> > > > > > >>> > > >> >>> > >> tor</
>>> > > > > > >>> > > >> >>> > >> > > class>
>>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>>> > > > > > >>> > > >> >>> > >> class>
>>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > > </beans>
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > > LA
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís
>>> > Alves
>>> > > <
>>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >> > > wrote:
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they are
>>> on
>>> > the
>>> > > > > > >>> bean.xml
>>> > > > > > >>> > they
>>> > > > > > >>> > > >> >>> should
>>> > > > > > >>> > > >> >>> > >> works
>>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
>>> > > before)
>>> > > > > > >>> getting:
>>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
>>> > > > > > >>> CustomBaseRepository
>>> > > > > > >>> > > >> >>> failed. Is
>>> > > > > > >>> > > >> >>> > >> it
>>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got
>>> this
>>> > > > base
>>> > > > > > >>> class
>>> > > > > > >>> > for
>>> > > > > > >>> > > >> some
>>> > > > > > >>> > > >> >>> > >> > repositories
>>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>>> CustomBaseRepository
>>> > > <E
>>> > > > > > >>> extends
>>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>>> > > > > > >>> > > >> >>> > >> > >>         extends
>>> > AbstractEntityRepository<E,
>>> > > K>
>>> > > > > > >>> > > >> >>> > >> > >> {
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
>>> supposed
>>> > to
>>> > > > work
>>> > > > > > >>> with
>>> > > > > > >>> > the
>>> > > > > > >>> > > >> >>> Repos...
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
>>> Thomas
>>> > > > > > Andraschko
>>> > > > > > >>> <
>>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >>> See:
>>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
>>> > > Andraschko
>>> > > > <
>>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
>>> > > > supported
>>> > > > > > but
>>> > > > > > >>> only
>>> > > > > > >>> > > via
>>> > > > > > >>> > > >> >>> custom
>>> > > > > > >>> > > >> >>> > >> > >>> binding -
>>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>>> @Intercepted
>>> > and
>>> > > > > > >>> @Decorator"
>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
>>> Alves <
>>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
>>> > > > actually
>>> > > > > a
>>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>>> > > > > > >>> > > >> >>> > >> > and
>>> > > > > > >>> > > >> >>> > >> > >>> I
>>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors
>>> > > applied
>>> > > > > via
>>> > > > > > >>> > > >> >>> @Interceptors,
>>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported
>>> by
>>> > our
>>> > > > > > proxies!
>>> > > > > > >>> > > >> "...does
>>> > > > > > >>> > > >> >>> it
>>> > > > > > >>> > > >> >>> > >> means
>>> > > > > > >>> > > >> >>> > >> > >>> that
>>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM,
>>> Luís
>>> > > > > Alves <
>>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
>>> > > > > interceptor
>>> > > > > > >>> is
>>> > > > > > >>> > not
>>> > > > > > >>> > > >> >>> working
>>> > > > > > >>> > > >> >>> > :(
>>> > > > > > >>> > > >> >>> > >> > can't
>>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
>>> @Repository
>>> > > > methods
>>> > > > > > be
>>> > > > > > >>> > > >> >>> intercepted?
>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM,
>>> > Luís
>>> > > > > Alves
>>> > > > > > <
>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should
>>> be
>>> > > > OK...I
>>> > > > > > >>> guess
>>> > > > > > >>> > it's
>>> > > > > > >>> > > >> like
>>> > > > > > >>> > > >> >>> > >> > Spring's
>>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44
>>> AM,
>>> > Luís
>>> > > > > > Alves <
>>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
>>> > > scoped...and
>>> > > > > > seems
>>> > > > > > >>> > that
>>> > > > > > >>> > > >> >>> > @Dependent
>>> > > > > > >>> > > >> >>> > >> > >>> don't run
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>>> > > > @CacheResult(cacheName
>>> > > > > =
>>> > > > > > >>> > > >> "my-cache")
>>> > > > > > >>> > > >> >>> > >> annotation
>>> > > > > > >>> > > >> >>> > >> > >>> isn't
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
>>> proposed
>>> > > that
>>> > > > > > >>> > @Repository
>>> > > > > > >>> > > >> >>> > >> could/should
>>> > > > > > >>> > > >> >>> > >> > be
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
>>> change
>>> > > them
>>> > > > > do
>>> > > > > > I
>>> > > > > > >>> have
>>> > > > > > >>> > > to
>>> > > > > > >>> > > >> >>> worry
>>> > > > > > >>> > > >> >>> > >> with
>>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
>>> > > > following:
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
>>> different EM
>>> > > for
>>> > > > > > each
>>> > > > > > >>> HTTP
>>> > > > > > >>> > > >> >>> request /
>>> > > > > > >>> > > >> >>> > >> MDB
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>>> > > > @Scheduled(cronExpression
>>> > > > > > >>> > > >> ="....")...am I
>>> > > > > > >>> > > >> >>> > >> correct?
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >> >
>>> > > > > > >>> > > >> >>> > >> > >>> >>
>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > > > >>> > > >> >>> > >> > >>> >
>>> > > > > > >>> > > >> >>> > >> > >>>
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >>
>>> > > > > > >>> > > >> >>> > >> > >
>>> > > > > > >>> > > >> >>> > >> >
>>> > > > > > >>> > > >> >>> > >>
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> > >
>>> > > > > > >>> > > >> >>> >
>>> > > > > > >>> > > >> >>>
>>> > > > > > >>> > > >> >>
>>> > > > > > >>> > > >> >>
>>> > > > > > >>> > > >> >
>>> > > > > > >>> > > >>
>>> > > > > > >>> > > >
>>> > > > > > >>> > >
>>> > > > > > >>> >
>>> > > > > > >>>
>>> > > > > > >>
>>> > > > > > >>
>>> > > > > > >
>>> > > > > >
>>> > > > >
>>> > > >
>>> > >
>>> >
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
where the hell is DeltaSpikeProxyInterceptorLookup? which jar I have to
import?!


On Fri, Apr 20, 2018 at 4:25 PM, Luís Alves <lu...@gmail.com> wrote:

> I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup
> extends DeltaSpikeProxyInterceptorLookup should do the trick.
>
> On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/
>> spi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>>
>> Would be great if you can test it, create a issue and provide a patch.
>>
>> Am Freitag, 20. April 2018 schrieb Luís Alves :
>>
>> > I have no idea if it's possible or not. Isn't any CDI expert on the
>> mailing
>> > list that want to help? ;)
>> >
>> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
>> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterpr
>> ise.inject.spi
>> > .
>> > AnnotatedType- doesn't make the annotation visible to (annotationType.
>> > isAnnotationPresent(InterceptorBinding.class))...we need some runtime
>> way
>> > to check it...
>> >
>> > BTW if a solutions is found can you make it available on 1.8.2?
>> >
>> >
>> >
>> >
>> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
>> > andraschko.thomas@gmail.com> wrote:
>> >
>> > > Yep, they add the interceptorBinding dynamically:
>> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
>> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/anno
>> tations/cdi/
>> > > InterceptorExtension.java
>> > >
>> > > Just check our code here:
>> > > https://github.com/apache/deltaspike/blob/master/
>> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
>> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
>> > up.java#L90
>> > >
>> > > This code would need ask CDI if this annotation is a interceptor
>> binding
>> > > (if possible, not sure if it's in the CDI API). Then your case should
>> > work.
>> > >
>> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > >
>> > > > This is the reference implementation of the interceptors:
>> > > > https://github.com/jsr107/RI
>> > > > They have:
>> > > >
>> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> > > >        xsi:schemaLocation="
>> > > > http://java.sun.com/xml/ns/javaee
>> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > > >     <interceptors>
>> > > >         <class>org.jsr107.ri.annotations.cdi.
>> > > > CacheResultInterceptor</class>
>> > > >         <class>org.jsr107.ri.annotations.cdi.
>> > CachePutInterceptor</class>
>> > > >
>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
>> > class>
>> > > >
>> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercept
>> or</class>
>> > > >     </interceptors>
>> > > > </beans>
>> > > >
>> > > > and they have 2files with:
>> > > >
>> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
>> > > >
>> > > > and
>> > > >
>> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>> > > >
>> > > > The interceptors work on a normal cdi bean.
>> > > >
>> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
>> > > > andraschko.thomas@gmail.com> wrote:
>> > > >
>> > > > > AFAIK there 2 ways of using interceptors with CDI:
>> > > > >
>> > > > > 1) @InterceptorBinding
>> > > > > 2) @Interceptors(..)
>> > > > >
>> > > > > We only support 1) currently.
>> > > > >
>> > > > > So i have currently no idea how @CacheResult will work even a
>> normal
>> > > CDI
>> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
>> > > > >
>> > > > >
>> > > > >
>> > > > >
>> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > > > >
>> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
>> > > > > > I suppose they will tell the issue is from DS...:(
>> > > > > >
>> > > > > >
>> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
>> luisalves00@gmail.com
>> > >
>> > > > > wrote:
>> > > > > >
>> > > > > > > I suppose it's CDI capable.
>> > > > > > >
>> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
>> > > > > > >
>> > > > > > > Red Hat
>> > > > > > > : Pete Muir   <---  is on the expert group
>> > > > > > >
>> > > > > > >
>> > > > > > >  * @author Gavin King
>> > > > > > >  * @author Pete Muir
>> > > > > > >  * @author Antoine Sabot-Durand
>> > > > > > >  */
>> > > > > > >
>> > > > > > > @Target({ TYPE, METHOD, FIELD })
>> > > > > > > @Retention(RUNTIME)
>> > > > > > > @Documented
>> > > > > > > @NormalScope
>> > > > > > > @Inherited
>> > > > > > > public @interface ApplicationScoped {
>> > > > > > >
>> > > > > > > }
>> > > > > > >
>> > > > > > >
>> > > > > > > what I don't understand is how DS look for the interceptors?
>> Can
>> > > you
>> > > > > > point
>> > > > > > > me out the code?
>> > > > > > > Isn't possible to look for all annotations even if they don't
>> > have
>> > > > > > > @InterceptorBinding and then look for the registered
>> > interceptors?
>> > > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
>> > luisalves00@gmail.com
>> > > >
>> > > > > > wrote:
>> > > > > > >
>> > > > > > >> I suppose it's CDI capable.
>> > > > > > >>
>> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
>> > > > > > >>
>> > > > > > >>
>> > > > > > >>
>> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>> > > > > > >> andraschko.thomas@gmail.com> wrote:
>> > > > > > >>
>> > > > > > >>> Puh, i wonder why they did it without binding. CacheResult
>> is
>> > > > > actually
>> > > > > > >>> exactly a binding for the interceptor.
>> > > > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
>> > > > > > >>>
>> > > > > > >>> Even there is a bridge or something available (
>> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if
>> this
>> > > > would
>> > > > > > >>> work
>> > > > > > >>> with the limited ability to add interceptors to partial
>> beans.
>> > > > > > >>>
>> > > > > > >>> I think the best solution for now is to create a own
>> binding.
>> > > > > > >>>
>> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <
>> luisalves00@gmail.com>:
>> > > > > > >>>
>> > > > > > >>> > uhm...that's not good :S
>> > > > > > >>> >
>> > > > > > >>> > the annotation is this one:
>> > > > > > >>> >
>> > > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>> > > > > > >>> > javax/cache/annotation/CacheResult.html
>> > > > > > >>> >
>> > > > > > >>> > is there a way that using that annotation we get the
>> > > interceptor
>> > > > to
>> > > > > > >>> work?
>> > > > > > >>> > (I can implement the interceptor myself....as I said I
>> cannot
>> > > > > modify
>> > > > > > >>> the
>> > > > > > >>> > annotation as it is javax packge)
>> > > > > > >>> >
>> > > > > > >>> >
>> > > > > > >>> >
>> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
>> > > > > > >>> >
>> > > > > > >>> > > Just to be clear: I have no idea how internally
>> CacheResult
>> > > > works
>> > > > > > >>> but our
>> > > > > > >>> > > partial beans only supports CDI interceptors by a
>> binding
>> > > > > > >>> > > (InterceptorBinding).
>> > > > > > >>> > > Everything else, like stated in the doc (@Interceptors,
>> > > > > > @Intercepted,
>> > > > > > >>> > > @Decorator), is not supported.
>> > > > > > >>> > >
>> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>> > > > > > >>> > andraschko.thomas@gmail.com
>> > > > > > >>> > > >:
>> > > > > > >>> > >
>> > > > > > >>> > > > In must not work without the interceptorbinding. Do
>> you
>> > > mean
>> > > > > that
>> > > > > > >>> it
>> > > > > > >>> > does
>> > > > > > >>> > > > work without?
>> > > > > > >>> > > >
>> > > > > > >>> > > >
>> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>> > > > > > >>> > > >
>> > > > > > >>> > > >> can you update your test to remove
>> @InterceptorBinding?
>> > > and
>> > > > > > check
>> > > > > > >>> if
>> > > > > > >>> > it
>> > > > > > >>> > > >> works?
>> > > > > > >>> > > >>
>> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard so I
>> > > don't
>> > > > > want
>> > > > > > >>> to
>> > > > > > >>> > > extend
>> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this is
>> really
>> > > the
>> > > > > > >>> problem.
>> > > > > > >>> > > >>
>> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>> > > > > > >>> luisalves00@gmail.com>
>> > > > > > >>> > > >> wrote:
>> > > > > > >>> > > >>
>> > > > > > >>> > > >> > @Retention(RUNTIME)
>> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
>> > > > > > >>> > > >> > // @InterceptorBinding
>> > > > > > >>> > > >> > public @interface CustomInterceptor
>> > > > > > >>> > > >> > {
>> > > > > > >>> > > >> > }
>> > > > > > >>> > > >> >
>> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but not
>> 100%
>> > > > > > >>> sure....what
>> > > > > > >>> > is
>> > > > > > >>> > > >> the
>> > > > > > >>> > > >> > purpose of that?
>> > > > > > >>> > > >> >
>> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>> > > > > > >>> luisalves00@gmail.com>
>> > > > > > >>> > > >> wrote:
>> > > > > > >>> > > >> >
>> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
>> > > > @CacheResult
>> > > > > > >>> > > interceptor
>> > > > > > >>> > > >> ;)
>> > > > > > >>> > > >> >> ? to see if it works?
>> > > > > > >>> > > >> >>
>> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
>> Andraschko <
>> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
>> > > > > > >>> > > >> >>
>> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really
>> called
>> > ;)
>> > > > > > >>> > > >> >>>
>> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
>> > > > > > luisalves00@gmail.com
>> > > > > > >>> >:
>> > > > > > >>> > > >> >>>
>> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
>> > > > > > interceptor
>> > > > > > >>> for
>> > > > > > >>> > > the
>> > > > > > >>> > > >> >>> web app
>> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it
>> should
>> > > work
>> > > > > for
>> > > > > > >>> the
>> > > > > > >>> > > cache
>> > > > > > >>> > > >> as
>> > > > > > >>> > > >> >>> > well. Any hint?
>> > > > > > >>> > > >> >>> >
>> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
>> > > > > > >>> > > luisalves00@gmail.com
>> > > > > > >>> > > >> >
>> > > > > > >>> > > >> >>> > wrote:
>> > > > > > >>> > > >> >>> >
>> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
>> > "copy"
>> > > of
>> > > > > > yours
>> > > > > > >>> > that
>> > > > > > >>> > > >> logs
>> > > > > > >>> > > >> >>> a
>> > > > > > >>> > > >> >>> > > line):
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > @Interceptor
>> > > > > > >>> > > >> >>> > > @CustomInterceptor
>> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl implements
>> > > > > > Serializable
>> > > > > > >>> > > >> >>> > > {
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >     private static final long
>> serialVersionUID =
>> > > > > > >>> > > >> >>> 7327752605570037403L;
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >     @Inject
>> > > > > > >>> > > >> >>> > >     private Logger logger;
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >     @AroundInvoke
>> > > > > > >>> > > >> >>> > >     public Object
>> interceptIt(InvocationContext
>> > > > > > >>> > > invocationContext)
>> > > > > > >>> > > >> >>> throws
>> > > > > > >>> > > >> >>> > > Exception
>> > > > > > >>> > > >> >>> > >     {
>> > > > > > >>> > > >> >>> > >         logger.info("yay :)
>> > CustomInterceptorImpl
>> > > > was
>> > > > > > >>> > called");
>> > > > > > >>> > > >> >>> > >         return invocationContext.proceed();
>> > > > > > >>> > > >> >>> > >     }
>> > > > > > >>> > > >> >>> > > }
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service and
>> > repo
>> > > > > > layers):
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml
>> /ns/javaee
>> > "
>> > > > > > >>> xmlns:xsi="
>> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
>> > > > > > java.sun.com/xml/ns/javaee
>> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/jav
>> aee/beans_1_0.xsd
>> > ">
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >     <interceptors>
>> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotati
>> ons.cdi.
>> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
>> > > > > > >>> > > >> >>> > >     ...
>> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>> > > > > > >>> > CustomInterceptorImpl</class>
>> > > > > > >>> > > >> >>> > >     </interceptors>
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > </beans>
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > It's called on the service layer but not on
>> the
>> > > > > > >>> @Repository :(
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
>> > > Andraschko
>> > > > <
>> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor and
>> check
>> > > if
>> > > > > it's
>> > > > > > >>> > > invoked?
>> > > > > > >>> > > >> >>> > >>
>> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>> > > > > > >>> weld-2.0.0.SP1? We
>> > > > > > >>> > > >> have a
>> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as
>> there is
>> > > > > > something
>> > > > > > >>> > > broken,
>> > > > > > >>> > > >> >>> as you
>> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
>> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
>> > > provide a
>> > > > > > >>> unittest
>> > > > > > >>> > > for
>> > > > > > >>> > > >> the
>> > > > > > >>> > > >> >>> > data
>> > > > > > >>> > > >> >>> > >> module.
>> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
>> > > > > > >>> > > >> >>> > >>
>> > > > > > >>> > > >> >>> > >>
>> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>> > > > > > >>> luisalves00@gmail.com
>> > > > > > >>> > >:
>> > > > > > >>> > > >> >>> > >>
>> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
>> > > > > > >>> > > >> >>> > >> > @Repository
>> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm
>> > doing
>> > > > > > wrong.
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís
>> Alves
>> > <
>> > > > > > >>> > > >> >>> luisalves00@gmail.com>
>> > > > > > >>> > > >> >>> > >> > wrote:
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
>> > > > now...but
>> > > > > > >>> still
>> > > > > > >>> > > can't
>> > > > > > >>> > > >> >>> get the
>> > > > > > >>> > > >> >>> > >> > cache
>> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
>> beans.xml:
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
>> > > > xml/ns/javaee"
>> > > > > > >>> > > xmlns:xsi="
>> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSche
>> ma-instance"
>> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>> > > > > > >>> > java.sun.com/xml/ns/javaee
>> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
>> > > > javaee/beans_1_0.xsd
>> > > > > ">
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > >     <interceptors>
>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>> > > annotations.cdi.
>> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
>> > > annotations.cdi.
>> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>> > > > > > >>> > > >> >>> > >> > > class>
>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>> > > > > > >>> > > >> >>> > >> tor</
>> > > > > > >>> > > >> >>> > >> > > class>
>> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
>> > > > > > >>> > > >> >>> > >> class>
>> > > > > > >>> > > >> >>> > >> > >     </interceptors>
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > > </beans>
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > > LA
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís
>> > Alves
>> > > <
>> > > > > > >>> > > >> >>> luisalves00@gmail.com
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >> > > wrote:
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they are
>> on
>> > the
>> > > > > > >>> bean.xml
>> > > > > > >>> > they
>> > > > > > >>> > > >> >>> should
>> > > > > > >>> > > >> >>> > >> works
>> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
>> > > before)
>> > > > > > >>> getting:
>> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>> > > > > > >>> > > >> l.RepositoryDefinitionException:
>> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
>> > > > > > >>> CustomBaseRepository
>> > > > > > >>> > > >> >>> failed. Is
>> > > > > > >>> > > >> >>> > >> it
>> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got
>> this
>> > > > base
>> > > > > > >>> class
>> > > > > > >>> > for
>> > > > > > >>> > > >> some
>> > > > > > >>> > > >> >>> > >> > repositories
>> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >> public abstract class
>> CustomBaseRepository
>> > > <E
>> > > > > > >>> extends
>> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
>> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
>> > > > > > >>> > > >> >>> > >> > >>         extends
>> > AbstractEntityRepository<E,
>> > > K>
>> > > > > > >>> > > >> >>> > >> > >> {
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is
>> supposed
>> > to
>> > > > work
>> > > > > > >>> with
>> > > > > > >>> > the
>> > > > > > >>> > > >> >>> Repos...
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM,
>> Thomas
>> > > > > > Andraschko
>> > > > > > >>> <
>> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >>> See:
>> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
>> > > > > > >>> > > >> aspike/tree/master/deltaspike/
>> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>> > > > > > >>> > > >> test/java/org/apache/deltaspik
>> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
>> > > Andraschko
>> > > > <
>> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
>> > > > supported
>> > > > > > but
>> > > > > > >>> only
>> > > > > > >>> > > via
>> > > > > > >>> > > >> >>> custom
>> > > > > > >>> > > >> >>> > >> > >>> binding -
>> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,
>> @Intercepted
>> > and
>> > > > > > >>> @Decorator"
>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
>> Alves <
>> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
>> > > > actually
>> > > > > a
>> > > > > > >>> > > >> >>> > @PartialBeanBinding
>> > > > > > >>> > > >> >>> > >> > and
>> > > > > > >>> > > >> >>> > >> > >>> I
>> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors
>> > > applied
>> > > > > via
>> > > > > > >>> > > >> >>> @Interceptors,
>> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
>> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by
>> > our
>> > > > > > proxies!
>> > > > > > >>> > > >> "...does
>> > > > > > >>> > > >> >>> it
>> > > > > > >>> > > >> >>> > >> means
>> > > > > > >>> > > >> >>> > >> > >>> that
>> > > > > > >>> > > >> >>> > >> > >>> >> I'm
>> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> LA
>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM,
>> Luís
>> > > > > Alves <
>> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
>> > > > > interceptor
>> > > > > > >>> is
>> > > > > > >>> > not
>> > > > > > >>> > > >> >>> working
>> > > > > > >>> > > >> >>> > :(
>> > > > > > >>> > > >> >>> > >> > can't
>> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't
>> @Repository
>> > > > methods
>> > > > > > be
>> > > > > > >>> > > >> >>> intercepted?
>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM,
>> > Luís
>> > > > > Alves
>> > > > > > <
>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
>> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should
>> be
>> > > > OK...I
>> > > > > > >>> guess
>> > > > > > >>> > it's
>> > > > > > >>> > > >> like
>> > > > > > >>> > > >> >>> > >> > Spring's
>> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM,
>> > Luís
>> > > > > > Alves <
>> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
>> > > scoped...and
>> > > > > > seems
>> > > > > > >>> > that
>> > > > > > >>> > > >> >>> > @Dependent
>> > > > > > >>> > > >> >>> > >> > >>> don't run
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
>> > > > @CacheResult(cacheName
>> > > > > =
>> > > > > > >>> > > >> "my-cache")
>> > > > > > >>> > > >> >>> > >> annotation
>> > > > > > >>> > > >> >>> > >> > >>> isn't
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
>> proposed
>> > > that
>> > > > > > >>> > @Repository
>> > > > > > >>> > > >> >>> > >> could/should
>> > > > > > >>> > > >> >>> > >> > be
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
>> change
>> > > them
>> > > > > do
>> > > > > > I
>> > > > > > >>> have
>> > > > > > >>> > > to
>> > > > > > >>> > > >> >>> worry
>> > > > > > >>> > > >> >>> > >> with
>> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
>> > > > following:
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a
>> different EM
>> > > for
>> > > > > > each
>> > > > > > >>> HTTP
>> > > > > > >>> > > >> >>> request /
>> > > > > > >>> > > >> >>> > >> MDB
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
>> > > > @Scheduled(cronExpression
>> > > > > > >>> > > >> ="....")...am I
>> > > > > > >>> > > >> >>> > >> correct?
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
>> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
>> > > > > > >>> > > >> >>> > >> > >>> >> >>>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> >>
>> > > > > > >>> > > >> >>> > >> > >>> >> >
>> > > > > > >>> > > >> >>> > >> > >>> >>
>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > > > >>> > > >> >>> > >> > >>> >
>> > > > > > >>> > > >> >>> > >> > >>>
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >>
>> > > > > > >>> > > >> >>> > >> > >
>> > > > > > >>> > > >> >>> > >> >
>> > > > > > >>> > > >> >>> > >>
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> > >
>> > > > > > >>> > > >> >>> >
>> > > > > > >>> > > >> >>>
>> > > > > > >>> > > >> >>
>> > > > > > >>> > > >> >>
>> > > > > > >>> > > >> >
>> > > > > > >>> > > >>
>> > > > > > >>> > > >
>> > > > > > >>> > >
>> > > > > > >>> >
>> > > > > > >>>
>> > > > > > >>
>> > > > > > >>
>> > > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
I'll try....@Specializes on CustomDeltaSpikeProxyInterceptorLookup extends
DeltaSpikeProxyInterceptorLookup should do the trick.

On Fri, Apr 20, 2018 at 4:19 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> https://docs.jboss.org/cdi/api/2.0/javax/enterprise/
> inject/spi/BeanManager.html#isInterceptorBinding-java.lang.Class-
>
> Would be great if you can test it, create a issue and provide a patch.
>
> Am Freitag, 20. April 2018 schrieb Luís Alves :
>
> > I have no idea if it's possible or not. Isn't any CDI expert on the
> mailing
> > list that want to help? ;)
> >
> > https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
> > BeforeBeanDiscovery.html#addInterceptorBinding-javax.
> enterprise.inject.spi
> > .
> > AnnotatedType- doesn't make the annotation visible to (annotationType.
> > isAnnotationPresent(InterceptorBinding.class))...we need some runtime
> way
> > to check it...
> >
> > BTW if a solutions is found can you make it available on 1.8.2?
> >
> >
> >
> >
> > On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> > andraschko.thomas@gmail.com> wrote:
> >
> > > Yep, they add the interceptorBinding dynamically:
> > > https://github.com/jsr107/RI/blob/master/cache-annotations-
> > > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/
> annotations/cdi/
> > > InterceptorExtension.java
> > >
> > > Just check our code here:
> > > https://github.com/apache/deltaspike/blob/master/
> > > deltaspike/modules/proxy/api/src/main/java/org/apache/
> > > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
> > up.java#L90
> > >
> > > This code would need ask CDI if this annotation is a interceptor
> binding
> > > (if possible, not sure if it's in the CDI API). Then your case should
> > work.
> > >
> > > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >
> > > > This is the reference implementation of the interceptors:
> > > > https://github.com/jsr107/RI
> > > > They have:
> > > >
> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > > >        xsi:schemaLocation="
> > > > http://java.sun.com/xml/ns/javaee
> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >     <interceptors>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > > CacheResultInterceptor</class>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > CachePutInterceptor</class>
> > > >
> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
> > class>
> > > >
> > > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</
> class>
> > > >     </interceptors>
> > > > </beans>
> > > >
> > > > and they have 2files with:
> > > >
> > > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> > > >
> > > > and
> > > >
> > > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> > > >
> > > > The interceptors work on a normal cdi bean.
> > > >
> > > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > > > andraschko.thomas@gmail.com> wrote:
> > > >
> > > > > AFAIK there 2 ways of using interceptors with CDI:
> > > > >
> > > > > 1) @InterceptorBinding
> > > > > 2) @Interceptors(..)
> > > > >
> > > > > We only support 1) currently.
> > > > >
> > > > > So i have currently no idea how @CacheResult will work even a
> normal
> > > CDI
> > > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > > >
> > > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > > > > > I suppose they will tell the issue is from DS...:(
> > > > > >
> > > > > >
> > > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <
> luisalves00@gmail.com
> > >
> > > > > wrote:
> > > > > >
> > > > > > > I suppose it's CDI capable.
> > > > > > >
> > > > > > > https://www.jcp.org/en/jsr/detail?id=107
> > > > > > >
> > > > > > > Red Hat
> > > > > > > : Pete Muir   <---  is on the expert group
> > > > > > >
> > > > > > >
> > > > > > >  * @author Gavin King
> > > > > > >  * @author Pete Muir
> > > > > > >  * @author Antoine Sabot-Durand
> > > > > > >  */
> > > > > > >
> > > > > > > @Target({ TYPE, METHOD, FIELD })
> > > > > > > @Retention(RUNTIME)
> > > > > > > @Documented
> > > > > > > @NormalScope
> > > > > > > @Inherited
> > > > > > > public @interface ApplicationScoped {
> > > > > > >
> > > > > > > }
> > > > > > >
> > > > > > >
> > > > > > > what I don't understand is how DS look for the interceptors?
> Can
> > > you
> > > > > > point
> > > > > > > me out the code?
> > > > > > > Isn't possible to look for all annotations even if they don't
> > have
> > > > > > > @InterceptorBinding and then look for the registered
> > interceptors?
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> > luisalves00@gmail.com
> > > >
> > > > > > wrote:
> > > > > > >
> > > > > > >> I suppose it's CDI capable.
> > > > > > >>
> > > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > > > > >>
> > > > > > >>
> > > > > > >>
> > > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > > > > > >> andraschko.thomas@gmail.com> wrote:
> > > > > > >>
> > > > > > >>> Puh, i wonder why they did it without binding. CacheResult is
> > > > > actually
> > > > > > >>> exactly a binding for the interceptor.
> > > > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > > > > > >>>
> > > > > > >>> Even there is a bridge or something available (
> > > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if
> this
> > > > would
> > > > > > >>> work
> > > > > > >>> with the limited ability to add interceptors to partial
> beans.
> > > > > > >>>
> > > > > > >>> I think the best solution for now is to create a own binding.
> > > > > > >>>
> > > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <luisalves00@gmail.com
> >:
> > > > > > >>>
> > > > > > >>> > uhm...that's not good :S
> > > > > > >>> >
> > > > > > >>> > the annotation is this one:
> > > > > > >>> >
> > > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > > > > > >>> > javax/cache/annotation/CacheResult.html
> > > > > > >>> >
> > > > > > >>> > is there a way that using that annotation we get the
> > > interceptor
> > > > to
> > > > > > >>> work?
> > > > > > >>> > (I can implement the interceptor myself....as I said I
> cannot
> > > > > modify
> > > > > > >>> the
> > > > > > >>> > annotation as it is javax packge)
> > > > > > >>> >
> > > > > > >>> >
> > > > > > >>> >
> > > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > > > > > >>> >
> > > > > > >>> > > Just to be clear: I have no idea how internally
> CacheResult
> > > > works
> > > > > > >>> but our
> > > > > > >>> > > partial beans only supports CDI interceptors by a binding
> > > > > > >>> > > (InterceptorBinding).
> > > > > > >>> > > Everything else, like stated in the doc (@Interceptors,
> > > > > > @Intercepted,
> > > > > > >>> > > @Decorator), is not supported.
> > > > > > >>> > >
> > > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > > > > > >>> > andraschko.thomas@gmail.com
> > > > > > >>> > > >:
> > > > > > >>> > >
> > > > > > >>> > > > In must not work without the interceptorbinding. Do you
> > > mean
> > > > > that
> > > > > > >>> it
> > > > > > >>> > does
> > > > > > >>> > > > work without?
> > > > > > >>> > > >
> > > > > > >>> > > >
> > > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > > > > >>> > > >
> > > > > > >>> > > >> can you update your test to remove
> @InterceptorBinding?
> > > and
> > > > > > check
> > > > > > >>> if
> > > > > > >>> > it
> > > > > > >>> > > >> works?
> > > > > > >>> > > >>
> > > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard so I
> > > don't
> > > > > want
> > > > > > >>> to
> > > > > > >>> > > extend
> > > > > > >>> > > >> it to have the @InterceptorBinding.....if this is
> really
> > > the
> > > > > > >>> problem.
> > > > > > >>> > > >>
> > > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > > > > > >>> luisalves00@gmail.com>
> > > > > > >>> > > >> wrote:
> > > > > > >>> > > >>
> > > > > > >>> > > >> > @Retention(RUNTIME)
> > > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > > > > > >>> > > >> > // @InterceptorBinding
> > > > > > >>> > > >> > public @interface CustomInterceptor
> > > > > > >>> > > >> > {
> > > > > > >>> > > >> > }
> > > > > > >>> > > >> >
> > > > > > >>> > > >> > I suspect is this @InterceptorBinding....but not
> 100%
> > > > > > >>> sure....what
> > > > > > >>> > is
> > > > > > >>> > > >> the
> > > > > > >>> > > >> > purpose of that?
> > > > > > >>> > > >> >
> > > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > > > > > >>> luisalves00@gmail.com>
> > > > > > >>> > > >> wrote:
> > > > > > >>> > > >> >
> > > > > > >>> > > >> >> don't you want to rewrite your tests with the
> > > > @CacheResult
> > > > > > >>> > > interceptor
> > > > > > >>> > > >> ;)
> > > > > > >>> > > >> >> ? to see if it works?
> > > > > > >>> > > >> >>
> > > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas
> Andraschko <
> > > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > > > > >>> > > >> >>
> > > > > > >>> > > >> >>> No idea, debug if the interceptor is really called
> > ;)
> > > > > > >>> > > >> >>>
> > > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > > > > > luisalves00@gmail.com
> > > > > > >>> >:
> > > > > > >>> > > >> >>>
> > > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > > > > > interceptor
> > > > > > >>> for
> > > > > > >>> > > the
> > > > > > >>> > > >> >>> web app
> > > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it should
> > > work
> > > > > for
> > > > > > >>> the
> > > > > > >>> > > cache
> > > > > > >>> > > >> as
> > > > > > >>> > > >> >>> > well. Any hint?
> > > > > > >>> > > >> >>> >
> > > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > > > > > >>> > > luisalves00@gmail.com
> > > > > > >>> > > >> >
> > > > > > >>> > > >> >>> > wrote:
> > > > > > >>> > > >> >>> >
> > > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
> > "copy"
> > > of
> > > > > > yours
> > > > > > >>> > that
> > > > > > >>> > > >> logs
> > > > > > >>> > > >> >>> a
> > > > > > >>> > > >> >>> > > line):
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > @Interceptor
> > > > > > >>> > > >> >>> > > @CustomInterceptor
> > > > > > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > > > > > Serializable
> > > > > > >>> > > >> >>> > > {
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >     private static final long
> serialVersionUID =
> > > > > > >>> > > >> >>> 7327752605570037403L;
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >     @Inject
> > > > > > >>> > > >> >>> > >     private Logger logger;
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >     @AroundInvoke
> > > > > > >>> > > >> >>> > >     public Object
> interceptIt(InvocationContext
> > > > > > >>> > > invocationContext)
> > > > > > >>> > > >> >>> throws
> > > > > > >>> > > >> >>> > > Exception
> > > > > > >>> > > >> >>> > >     {
> > > > > > >>> > > >> >>> > >         logger.info("yay :)
> > CustomInterceptorImpl
> > > > was
> > > > > > >>> > called");
> > > > > > >>> > > >> >>> > >         return invocationContext.proceed();
> > > > > > >>> > > >> >>> > >     }
> > > > > > >>> > > >> >>> > > }
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > registered on the beans.xml (for service and
> > repo
> > > > > > layers):
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/
> xml/ns/javaee
> > "
> > > > > > >>> xmlns:xsi="
> > > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > > > > java.sun.com/xml/ns/javaee
> > > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/
> javaee/beans_1_0.xsd
> > ">
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >     <interceptors>
> > > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > > > > >>> > > >> >>> > >     ...
> > > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > > > > > >>> > CustomInterceptorImpl</class>
> > > > > > >>> > > >> >>> > >     </interceptors>
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > </beans>
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > It's called on the service layer but not on
> the
> > > > > > >>> @Repository :(
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
> > > Andraschko
> > > > <
> > > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >> You can try with a custom interceptor and
> check
> > > if
> > > > > it's
> > > > > > >>> > > invoked?
> > > > > > >>> > > >> >>> > >>
> > > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > > > > > >>> weld-2.0.0.SP1? We
> > > > > > >>> > > >> have a
> > > > > > >>> > > >> >>> > >> exclusion for this in the unit test as there
> is
> > > > > > something
> > > > > > >>> > > broken,
> > > > > > >>> > > >> >>> as you
> > > > > > >>> > > >> >>> > >> can check in the link i posted before.
> > > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
> > > provide a
> > > > > > >>> unittest
> > > > > > >>> > > for
> > > > > > >>> > > >> the
> > > > > > >>> > > >> >>> > data
> > > > > > >>> > > >> >>> > >> module.
> > > > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > > > > > >>> > > >> >>> > >>
> > > > > > >>> > > >> >>> > >>
> > > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > > > > > >>> luisalves00@gmail.com
> > > > > > >>> > >:
> > > > > > >>> > > >> >>> > >>
> > > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > > > > > >>> > > >> >>> > >> > @Repository
> > > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm
> > doing
> > > > > > wrong.
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís
> Alves
> > <
> > > > > > >>> > > >> >>> luisalves00@gmail.com>
> > > > > > >>> > > >> >>> > >> > wrote:
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
> > > > now...but
> > > > > > >>> still
> > > > > > >>> > > can't
> > > > > > >>> > > >> >>> get the
> > > > > > >>> > > >> >>> > >> > cache
> > > > > > >>> > > >> >>> > >> > > interceptor to work...here is my
> beans.xml:
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
> > > > xml/ns/javaee"
> > > > > > >>> > > xmlns:xsi="
> > > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/
> XMLSchema-instance"
> > > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > > > > > >>> > java.sun.com/xml/ns/javaee
> > > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > > > javaee/beans_1_0.xsd
> > > > > ">
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > >     <interceptors>
> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > > annotations.cdi.
> > > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > > annotations.cdi.
> > > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > > > > >>> > > >> >>> > >> > > class>
> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > > > > >>> > > >> >>> > >> tor</
> > > > > > >>> > > >> >>> > >> > > class>
> > > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > > > > >>> > > >> >>> > >> class>
> > > > > > >>> > > >> >>> > >> > >     </interceptors>
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > > </beans>
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > > LA
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís
> > Alves
> > > <
> > > > > > >>> > > >> >>> luisalves00@gmail.com
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >> > > wrote:
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >> if I understood correctly if they are on
> > the
> > > > > > >>> bean.xml
> > > > > > >>> > they
> > > > > > >>> > > >> >>> should
> > > > > > >>> > > >> >>> > >> works
> > > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
> > > before)
> > > > > > >>> getting:
> > > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > > > > > >>> > > >> l.RepositoryDefinitionException:
> > > > > > >>> > > >> >>> > >> > >> Repository creation for class class
> > > > > > >>> CustomBaseRepository
> > > > > > >>> > > >> >>> failed. Is
> > > > > > >>> > > >> >>> > >> it
> > > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got
> this
> > > > base
> > > > > > >>> class
> > > > > > >>> > for
> > > > > > >>> > > >> some
> > > > > > >>> > > >> >>> > >> > repositories
> > > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >> public abstract class
> CustomBaseRepository
> > > <E
> > > > > > >>> extends
> > > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > > > > > >>> > > >> >>> > >> > >> extends Serializable>
> > > > > > >>> > > >> >>> > >> > >>         extends
> > AbstractEntityRepository<E,
> > > K>
> > > > > > >>> > > >> >>> > >> > >> {
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed
> > to
> > > > work
> > > > > > >>> with
> > > > > > >>> > the
> > > > > > >>> > > >> >>> Repos...
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > > > > > Andraschko
> > > > > > >>> <
> > > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >>> See:
> > > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > > > > > >>> > > >> aspike/tree/master/deltaspike/
> > > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > > > > > >>> > > >> test/java/org/apache/deltaspik
> > > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > > > > > >>> > > >> >>> > >> > >>>
> > > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
> > > Andraschko
> > > > <
> > > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > > > > > >>> > > >> >>> > >> > >>>
> > > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
> > > > supported
> > > > > > but
> > > > > > >>> only
> > > > > > >>> > > via
> > > > > > >>> > > >> >>> custom
> > > > > > >>> > > >> >>> > >> > >>> binding -
> > > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted
> > and
> > > > > > >>> @Decorator"
> > > > > > >>> > > >> >>> > >> > >>> >
> > > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís
> Alves <
> > > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > > > > > >>> > > >> >>> > >> > >>> >
> > > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
> > > > actually
> > > > > a
> > > > > > >>> > > >> >>> > @PartialBeanBinding
> > > > > > >>> > > >> >>> > >> > and
> > > > > > >>> > > >> >>> > >> > >>> I
> > > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors
> > > applied
> > > > > via
> > > > > > >>> > > >> >>> @Interceptors,
> > > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by
> > our
> > > > > > proxies!
> > > > > > >>> > > >> "...does
> > > > > > >>> > > >> >>> it
> > > > > > >>> > > >> >>> > >> means
> > > > > > >>> > > >> >>> > >> > >>> that
> > > > > > >>> > > >> >>> > >> > >>> >> I'm
> > > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > > > >>> > > >> >>> > >> > >>> >> LA
> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM,
> Luís
> > > > > Alves <
> > > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> > > > > interceptor
> > > > > > >>> is
> > > > > > >>> > not
> > > > > > >>> > > >> >>> working
> > > > > > >>> > > >> >>> > :(
> > > > > > >>> > > >> >>> > >> > can't
> > > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository
> > > > methods
> > > > > > be
> > > > > > >>> > > >> >>> intercepted?
> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM,
> > Luís
> > > > > Alves
> > > > > > <
> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be
> > > > OK...I
> > > > > > >>> guess
> > > > > > >>> > it's
> > > > > > >>> > > >> like
> > > > > > >>> > > >> >>> > >> > Spring's
> > > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM,
> > Luís
> > > > > > Alves <
> > > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > > > > >>> > > >> >>> > >> > >>> >
> > > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
> > > scoped...and
> > > > > > seems
> > > > > > >>> > that
> > > > > > >>> > > >> >>> > @Dependent
> > > > > > >>> > > >> >>> > >> > >>> don't run
> > > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > > > @CacheResult(cacheName
> > > > > =
> > > > > > >>> > > >> "my-cache")
> > > > > > >>> > > >> >>> > >> annotation
> > > > > > >>> > > >> >>> > >> > >>> isn't
> > > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one
> proposed
> > > that
> > > > > > >>> > @Repository
> > > > > > >>> > > >> >>> > >> could/should
> > > > > > >>> > > >> >>> > >> > be
> > > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I
> change
> > > them
> > > > > do
> > > > > > I
> > > > > > >>> have
> > > > > > >>> > > to
> > > > > > >>> > > >> >>> worry
> > > > > > >>> > > >> >>> > >> with
> > > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
> > > > following:
> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different
> EM
> > > for
> > > > > > each
> > > > > > >>> HTTP
> > > > > > >>> > > >> >>> request /
> > > > > > >>> > > >> >>> > >> MDB
> > > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > > > @Scheduled(cronExpression
> > > > > > >>> > > >> ="....")...am I
> > > > > > >>> > > >> >>> > >> correct?
> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > > >>> > > >> >>> > >> > >>> >>
> > > > > > >>> > > >> >>> > >> > >>> >
> > > > > > >>> > > >> >>> > >> > >>> >
> > > > > > >>> > > >> >>> > >> > >>>
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >>
> > > > > > >>> > > >> >>> > >> > >
> > > > > > >>> > > >> >>> > >> >
> > > > > > >>> > > >> >>> > >>
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> > >
> > > > > > >>> > > >> >>> >
> > > > > > >>> > > >> >>>
> > > > > > >>> > > >> >>
> > > > > > >>> > > >> >>
> > > > > > >>> > > >> >
> > > > > > >>> > > >>
> > > > > > >>> > > >
> > > > > > >>> > >
> > > > > > >>> >
> > > > > > >>>
> > > > > > >>
> > > > > > >>
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
https://docs.jboss.org/cdi/api/2.0/javax/enterprise/inject/spi/BeanManager.html#isInterceptorBinding-java.lang.Class-

Would be great if you can test it, create a issue and provide a patch.

Am Freitag, 20. April 2018 schrieb Luís Alves :

> I have no idea if it's possible or not. Isn't any CDI expert on the mailing
> list that want to help? ;)
>
> https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
> BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterprise.inject.spi
> .
> AnnotatedType- doesn't make the annotation visible to (annotationType.
> isAnnotationPresent(InterceptorBinding.class))...we need some runtime way
> to check it...
>
> BTW if a solutions is found can you make it available on 1.8.2?
>
>
>
>
> On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > Yep, they add the interceptorBinding dynamically:
> > https://github.com/jsr107/RI/blob/master/cache-annotations-
> > ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/annotations/cdi/
> > InterceptorExtension.java
> >
> > Just check our code here:
> > https://github.com/apache/deltaspike/blob/master/
> > deltaspike/modules/proxy/api/src/main/java/org/apache/
> > deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLook
> up.java#L90
> >
> > This code would need ask CDI if this annotation is a interceptor binding
> > (if possible, not sure if it's in the CDI API). Then your case should
> work.
> >
> > 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> > > This is the reference implementation of the interceptors:
> > > https://github.com/jsr107/RI
> > > They have:
> > >
> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > >        xsi:schemaLocation="
> > > http://java.sun.com/xml/ns/javaee
> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >     <interceptors>
> > >         <class>org.jsr107.ri.annotations.cdi.
> > > CacheResultInterceptor</class>
> > >         <class>org.jsr107.ri.annotations.cdi.
> CachePutInterceptor</class>
> > >
> > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
> class>
> > >
> > > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
> > >     </interceptors>
> > > </beans>
> > >
> > > and they have 2files with:
> > >
> > > org.jsr107.ri.annotations.cdi.InterceptorExtension
> > >
> > > and
> > >
> > > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> > >
> > > The interceptors work on a normal cdi bean.
> > >
> > > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > > andraschko.thomas@gmail.com> wrote:
> > >
> > > > AFAIK there 2 ways of using interceptors with CDI:
> > > >
> > > > 1) @InterceptorBinding
> > > > 2) @Interceptors(..)
> > > >
> > > > We only support 1) currently.
> > > >
> > > > So i have currently no idea how @CacheResult will work even a normal
> > CDI
> > > > bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
> > > >
> > > >
> > > >
> > > >
> > > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > >
> > > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > > > > I suppose they will tell the issue is from DS...:(
> > > > >
> > > > >
> > > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <luisalves00@gmail.com
> >
> > > > wrote:
> > > > >
> > > > > > I suppose it's CDI capable.
> > > > > >
> > > > > > https://www.jcp.org/en/jsr/detail?id=107
> > > > > >
> > > > > > Red Hat
> > > > > > : Pete Muir   <---  is on the expert group
> > > > > >
> > > > > >
> > > > > >  * @author Gavin King
> > > > > >  * @author Pete Muir
> > > > > >  * @author Antoine Sabot-Durand
> > > > > >  */
> > > > > >
> > > > > > @Target({ TYPE, METHOD, FIELD })
> > > > > > @Retention(RUNTIME)
> > > > > > @Documented
> > > > > > @NormalScope
> > > > > > @Inherited
> > > > > > public @interface ApplicationScoped {
> > > > > >
> > > > > > }
> > > > > >
> > > > > >
> > > > > > what I don't understand is how DS look for the interceptors? Can
> > you
> > > > > point
> > > > > > me out the code?
> > > > > > Isn't possible to look for all annotations even if they don't
> have
> > > > > > @InterceptorBinding and then look for the registered
> interceptors?
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <
> luisalves00@gmail.com
> > >
> > > > > wrote:
> > > > > >
> > > > > >> I suppose it's CDI capable.
> > > > > >>
> > > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > > > >>
> > > > > >>
> > > > > >>
> > > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > > > > >> andraschko.thomas@gmail.com> wrote:
> > > > > >>
> > > > > >>> Puh, i wonder why they did it without binding. CacheResult is
> > > > actually
> > > > > >>> exactly a binding for the interceptor.
> > > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > > > > >>>
> > > > > >>> Even there is a bridge or something available (
> > > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this
> > > would
> > > > > >>> work
> > > > > >>> with the limited ability to add interceptors to partial beans.
> > > > > >>>
> > > > > >>> I think the best solution for now is to create a own binding.
> > > > > >>>
> > > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > > > >>>
> > > > > >>> > uhm...that's not good :S
> > > > > >>> >
> > > > > >>> > the annotation is this one:
> > > > > >>> >
> > > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > > > > >>> > javax/cache/annotation/CacheResult.html
> > > > > >>> >
> > > > > >>> > is there a way that using that annotation we get the
> > interceptor
> > > to
> > > > > >>> work?
> > > > > >>> > (I can implement the interceptor myself....as I said I cannot
> > > > modify
> > > > > >>> the
> > > > > >>> > annotation as it is javax packge)
> > > > > >>> >
> > > > > >>> >
> > > > > >>> >
> > > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > > > > >>> > andraschko.thomas@gmail.com> wrote:
> > > > > >>> >
> > > > > >>> > > Just to be clear: I have no idea how internally CacheResult
> > > works
> > > > > >>> but our
> > > > > >>> > > partial beans only supports CDI interceptors by a binding
> > > > > >>> > > (InterceptorBinding).
> > > > > >>> > > Everything else, like stated in the doc (@Interceptors,
> > > > > @Intercepted,
> > > > > >>> > > @Decorator), is not supported.
> > > > > >>> > >
> > > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > > > > >>> > andraschko.thomas@gmail.com
> > > > > >>> > > >:
> > > > > >>> > >
> > > > > >>> > > > In must not work without the interceptorbinding. Do you
> > mean
> > > > that
> > > > > >>> it
> > > > > >>> > does
> > > > > >>> > > > work without?
> > > > > >>> > > >
> > > > > >>> > > >
> > > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > > > >>> > > >
> > > > > >>> > > >> can you update your test to remove @InterceptorBinding?
> > and
> > > > > check
> > > > > >>> if
> > > > > >>> > it
> > > > > >>> > > >> works?
> > > > > >>> > > >>
> > > > > >>> > > >>  javax.cache.annotation.CacheResult is standard so I
> > don't
> > > > want
> > > > > >>> to
> > > > > >>> > > extend
> > > > > >>> > > >> it to have the @InterceptorBinding.....if this is really
> > the
> > > > > >>> problem.
> > > > > >>> > > >>
> > > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > > > > >>> luisalves00@gmail.com>
> > > > > >>> > > >> wrote:
> > > > > >>> > > >>
> > > > > >>> > > >> > @Retention(RUNTIME)
> > > > > >>> > > >> > @Target({ TYPE, METHOD })
> > > > > >>> > > >> > // @InterceptorBinding
> > > > > >>> > > >> > public @interface CustomInterceptor
> > > > > >>> > > >> > {
> > > > > >>> > > >> > }
> > > > > >>> > > >> >
> > > > > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> > > > > >>> sure....what
> > > > > >>> > is
> > > > > >>> > > >> the
> > > > > >>> > > >> > purpose of that?
> > > > > >>> > > >> >
> > > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > > > > >>> luisalves00@gmail.com>
> > > > > >>> > > >> wrote:
> > > > > >>> > > >> >
> > > > > >>> > > >> >> don't you want to rewrite your tests with the
> > > @CacheResult
> > > > > >>> > > interceptor
> > > > > >>> > > >> ;)
> > > > > >>> > > >> >> ? to see if it works?
> > > > > >>> > > >> >>
> > > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > > > >>> > > >> >>
> > > > > >>> > > >> >>> No idea, debug if the interceptor is really called
> ;)
> > > > > >>> > > >> >>>
> > > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > > > > luisalves00@gmail.com
> > > > > >>> >:
> > > > > >>> > > >> >>>
> > > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > > > > interceptor
> > > > > >>> for
> > > > > >>> > > the
> > > > > >>> > > >> >>> web app
> > > > > >>> > > >> >>> > beans.xml and now it gets called....SO it should
> > work
> > > > for
> > > > > >>> the
> > > > > >>> > > cache
> > > > > >>> > > >> as
> > > > > >>> > > >> >>> > well. Any hint?
> > > > > >>> > > >> >>> >
> > > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > > > > >>> > > luisalves00@gmail.com
> > > > > >>> > > >> >
> > > > > >>> > > >> >>> > wrote:
> > > > > >>> > > >> >>> >
> > > > > >>> > > >> >>> > > So I've created a custom one (in fact is a
> "copy"
> > of
> > > > > yours
> > > > > >>> > that
> > > > > >>> > > >> logs
> > > > > >>> > > >> >>> a
> > > > > >>> > > >> >>> > > line):
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > @Interceptor
> > > > > >>> > > >> >>> > > @CustomInterceptor
> > > > > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > > > > Serializable
> > > > > >>> > > >> >>> > > {
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >     private static final long serialVersionUID =
> > > > > >>> > > >> >>> 7327752605570037403L;
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >     @Inject
> > > > > >>> > > >> >>> > >     private Logger logger;
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >     @AroundInvoke
> > > > > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> > > > > >>> > > invocationContext)
> > > > > >>> > > >> >>> throws
> > > > > >>> > > >> >>> > > Exception
> > > > > >>> > > >> >>> > >     {
> > > > > >>> > > >> >>> > >         logger.info("yay :)
> CustomInterceptorImpl
> > > was
> > > > > >>> > called");
> > > > > >>> > > >> >>> > >         return invocationContext.proceed();
> > > > > >>> > > >> >>> > >     }
> > > > > >>> > > >> >>> > > }
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > registered on the beans.xml (for service and
> repo
> > > > > layers):
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee
> "
> > > > > >>> xmlns:xsi="
> > > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > > > java.sun.com/xml/ns/javaee
> > > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
> ">
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >     <interceptors>
> > > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > > > >>> > > >> >>> > >     ...
> > > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > > > > >>> > CustomInterceptorImpl</class>
> > > > > >>> > > >> >>> > >     </interceptors>
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > </beans>
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > It's called on the service layer but not on the
> > > > > >>> @Repository :(
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
> > Andraschko
> > > <
> > > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >> You can try with a custom interceptor and check
> > if
> > > > it's
> > > > > >>> > > invoked?
> > > > > >>> > > >> >>> > >>
> > > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > > > > >>> weld-2.0.0.SP1? We
> > > > > >>> > > >> have a
> > > > > >>> > > >> >>> > >> exclusion for this in the unit test as there is
> > > > > something
> > > > > >>> > > broken,
> > > > > >>> > > >> >>> as you
> > > > > >>> > > >> >>> > >> can check in the link i posted before.
> > > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
> > provide a
> > > > > >>> unittest
> > > > > >>> > > for
> > > > > >>> > > >> the
> > > > > >>> > > >> >>> > data
> > > > > >>> > > >> >>> > >> module.
> > > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > > > > >>> > > >> >>> > >>
> > > > > >>> > > >> >>> > >>
> > > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > > > > >>> luisalves00@gmail.com
> > > > > >>> > >:
> > > > > >>> > > >> >>> > >>
> > > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >> > @ApplicationScoped
> > > > > >>> > > >> >>> > >> > @Repository
> > > > > >>> > > >> >>> > >> > public abstract class SomeRepository
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm
> doing
> > > > > wrong.
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves
> <
> > > > > >>> > > >> >>> luisalves00@gmail.com>
> > > > > >>> > > >> >>> > >> > wrote:
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
> > > now...but
> > > > > >>> still
> > > > > >>> > > can't
> > > > > >>> > > >> >>> get the
> > > > > >>> > > >> >>> > >> > cache
> > > > > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
> > > xml/ns/javaee"
> > > > > >>> > > xmlns:xsi="
> > > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > > > > >>> > java.sun.com/xml/ns/javaee
> > > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > > javaee/beans_1_0.xsd
> > > > ">
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > >     <interceptors>
> > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > annotations.cdi.
> > > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> > annotations.cdi.
> > > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > > > >>> > > >> >>> > >> > > class>
> > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > > > >>> > > >> >>> > >> tor</
> > > > > >>> > > >> >>> > >> > > class>
> > > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > > > >>> > > >> >>> > >> class>
> > > > > >>> > > >> >>> > >> > >     </interceptors>
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > > </beans>
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > > LA
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís
> Alves
> > <
> > > > > >>> > > >> >>> luisalves00@gmail.com
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >> > > wrote:
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >> if I understood correctly if they are on
> the
> > > > > >>> bean.xml
> > > > > >>> > they
> > > > > >>> > > >> >>> should
> > > > > >>> > > >> >>> > >> works
> > > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
> > before)
> > > > > >>> getting:
> > > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > > > > >>> > > >> l.RepositoryDefinitionException:
> > > > > >>> > > >> >>> > >> > >> Repository creation for class class
> > > > > >>> CustomBaseRepository
> > > > > >>> > > >> >>> failed. Is
> > > > > >>> > > >> >>> > >> it
> > > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this
> > > base
> > > > > >>> class
> > > > > >>> > for
> > > > > >>> > > >> some
> > > > > >>> > > >> >>> > >> > repositories
> > > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository
> > <E
> > > > > >>> extends
> > > > > >>> > > >> >>> > >> DomainObject<K>, K
> > > > > >>> > > >> >>> > >> > >> extends Serializable>
> > > > > >>> > > >> >>> > >> > >>         extends
> AbstractEntityRepository<E,
> > K>
> > > > > >>> > > >> >>> > >> > >> {
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed
> to
> > > work
> > > > > >>> with
> > > > > >>> > the
> > > > > >>> > > >> >>> Repos...
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > > > > Andraschko
> > > > > >>> <
> > > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >>> See:
> > > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > > > > >>> > > >> aspike/tree/master/deltaspike/
> > > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > > > > >>> > > >> test/java/org/apache/deltaspik
> > > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > > > > >>> > > >> >>> > >> > >>>
> > > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
> > Andraschko
> > > <
> > > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > > > > >>> > > >> >>> > >> > >>>
> > > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
> > > supported
> > > > > but
> > > > > >>> only
> > > > > >>> > > via
> > > > > >>> > > >> >>> custom
> > > > > >>> > > >> >>> > >> > >>> binding -
> > > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted
> and
> > > > > >>> @Decorator"
> > > > > >>> > > >> >>> > >> > >>> >
> > > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > > > > >>> > > >> >>> luisalves00@gmail.com>:
> > > > > >>> > > >> >>> > >> > >>> >
> > > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
> > > actually
> > > > a
> > > > > >>> > > >> >>> > @PartialBeanBinding
> > > > > >>> > > >> >>> > >> > and
> > > > > >>> > > >> >>> > >> > >>> I
> > > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors
> > applied
> > > > via
> > > > > >>> > > >> >>> @Interceptors,
> > > > > >>> > > >> >>> > >> > >>> @Intercepted
> > > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by
> our
> > > > > proxies!
> > > > > >>> > > >> "...does
> > > > > >>> > > >> >>> it
> > > > > >>> > > >> >>> > >> means
> > > > > >>> > > >> >>> > >> > >>> that
> > > > > >>> > > >> >>> > >> > >>> >> I'm
> > > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > > > >>> > > >> >>> > >> > >>> >>
> > > > > >>> > > >> >>> > >> > >>> >> LA
> > > > > >>> > > >> >>> > >> > >>> >>
> > > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
> > > > Alves <
> > > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > > >>> > > >> >>> > >> > >>> >>
> > > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> > > > interceptor
> > > > > >>> is
> > > > > >>> > not
> > > > > >>> > > >> >>> working
> > > > > >>> > > >> >>> > :(
> > > > > >>> > > >> >>> > >> > can't
> > > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository
> > > methods
> > > > > be
> > > > > >>> > > >> >>> intercepted?
> > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM,
> Luís
> > > > Alves
> > > > > <
> > > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be
> > > OK...I
> > > > > >>> guess
> > > > > >>> > it's
> > > > > >>> > > >> like
> > > > > >>> > > >> >>> > >> > Spring's
> > > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM,
> Luís
> > > > > Alves <
> > > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > > > >>> > > >> >>> > >> > >>> >
> > > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
> > scoped...and
> > > > > seems
> > > > > >>> > that
> > > > > >>> > > >> >>> > @Dependent
> > > > > >>> > > >> >>> > >> > >>> don't run
> > > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > > @CacheResult(cacheName
> > > > =
> > > > > >>> > > >> "my-cache")
> > > > > >>> > > >> >>> > >> annotation
> > > > > >>> > > >> >>> > >> > >>> isn't
> > > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed
> > that
> > > > > >>> > @Repository
> > > > > >>> > > >> >>> > >> could/should
> > > > > >>> > > >> >>> > >> > be
> > > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change
> > them
> > > > do
> > > > > I
> > > > > >>> have
> > > > > >>> > > to
> > > > > >>> > > >> >>> worry
> > > > > >>> > > >> >>> > >> with
> > > > > >>> > > >> >>> > >> > >>> >> anything? My
> > > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
> > > following:
> > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM
> > for
> > > > > each
> > > > > >>> HTTP
> > > > > >>> > > >> >>> request /
> > > > > >>> > > >> >>> > >> MDB
> > > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > > @Scheduled(cronExpression
> > > > > >>> > > >> ="....")...am I
> > > > > >>> > > >> >>> > >> correct?
> > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > >>> > > >> >>> > >> > >>> >> >>
> > > > > >>> > > >> >>> > >> > >>> >> >
> > > > > >>> > > >> >>> > >> > >>> >>
> > > > > >>> > > >> >>> > >> > >>> >
> > > > > >>> > > >> >>> > >> > >>> >
> > > > > >>> > > >> >>> > >> > >>>
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >>
> > > > > >>> > > >> >>> > >> > >
> > > > > >>> > > >> >>> > >> >
> > > > > >>> > > >> >>> > >>
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> > >
> > > > > >>> > > >> >>> >
> > > > > >>> > > >> >>>
> > > > > >>> > > >> >>
> > > > > >>> > > >> >>
> > > > > >>> > > >> >
> > > > > >>> > > >>
> > > > > >>> > > >
> > > > > >>> > >
> > > > > >>> >
> > > > > >>>
> > > > > >>
> > > > > >>
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
I have no idea if it's possible or not. Isn't any CDI expert on the mailing
list that want to help? ;)

https://docs.oracle.com/javaee/7/api/javax/enterprise/inject/spi/
BeforeBeanDiscovery.html#addInterceptorBinding-javax.enterprise.inject.spi.
AnnotatedType- doesn't make the annotation visible to (annotationType.
isAnnotationPresent(InterceptorBinding.class))...we need some runtime way
to check it...

BTW if a solutions is found can you make it available on 1.8.2?




On Fri, Apr 20, 2018 at 3:33 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> Yep, they add the interceptorBinding dynamically:
> https://github.com/jsr107/RI/blob/master/cache-annotations-
> ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/annotations/cdi/
> InterceptorExtension.java
>
> Just check our code here:
> https://github.com/apache/deltaspike/blob/master/
> deltaspike/modules/proxy/api/src/main/java/org/apache/
> deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLookup.java#L90
>
> This code would need ask CDI if this annotation is a interceptor binding
> (if possible, not sure if it's in the CDI API). Then your case should work.
>
> 2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > This is the reference implementation of the interceptors:
> > https://github.com/jsr107/RI
> > They have:
> >
> > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >        xsi:schemaLocation="
> > http://java.sun.com/xml/ns/javaee
> > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >     <interceptors>
> >         <class>org.jsr107.ri.annotations.cdi.
> > CacheResultInterceptor</class>
> >         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
> >
> > <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</class>
> >
> > <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
> >     </interceptors>
> > </beans>
> >
> > and they have 2files with:
> >
> > org.jsr107.ri.annotations.cdi.InterceptorExtension
> >
> > and
> >
> > org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
> >
> > The interceptors work on a normal cdi bean.
> >
> > On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> > andraschko.thomas@gmail.com> wrote:
> >
> > > AFAIK there 2 ways of using interceptors with CDI:
> > >
> > > 1) @InterceptorBinding
> > > 2) @Interceptors(..)
> > >
> > > We only support 1) currently.
> > >
> > > So i have currently no idea how @CacheResult will work even a normal
> CDI
> > > bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
> > >
> > >
> > >
> > >
> > > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >
> > > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > > > I suppose they will tell the issue is from DS...:(
> > > >
> > > >
> > > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > > >
> > > > > I suppose it's CDI capable.
> > > > >
> > > > > https://www.jcp.org/en/jsr/detail?id=107
> > > > >
> > > > > Red Hat
> > > > > : Pete Muir   <---  is on the expert group
> > > > >
> > > > >
> > > > >  * @author Gavin King
> > > > >  * @author Pete Muir
> > > > >  * @author Antoine Sabot-Durand
> > > > >  */
> > > > >
> > > > > @Target({ TYPE, METHOD, FIELD })
> > > > > @Retention(RUNTIME)
> > > > > @Documented
> > > > > @NormalScope
> > > > > @Inherited
> > > > > public @interface ApplicationScoped {
> > > > >
> > > > > }
> > > > >
> > > > >
> > > > > what I don't understand is how DS look for the interceptors? Can
> you
> > > > point
> > > > > me out the code?
> > > > > Isn't possible to look for all annotations even if they don't have
> > > > > @InterceptorBinding and then look for the registered interceptors?
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <luisalves00@gmail.com
> >
> > > > wrote:
> > > > >
> > > > >> I suppose it's CDI capable.
> > > > >>
> > > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > > >>
> > > > >>
> > > > >>
> > > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > > > >> andraschko.thomas@gmail.com> wrote:
> > > > >>
> > > > >>> Puh, i wonder why they did it without binding. CacheResult is
> > > actually
> > > > >>> exactly a binding for the interceptor.
> > > > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > > > >>>
> > > > >>> Even there is a bridge or something available (
> > > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this
> > would
> > > > >>> work
> > > > >>> with the limited ability to add interceptors to partial beans.
> > > > >>>
> > > > >>> I think the best solution for now is to create a own binding.
> > > > >>>
> > > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > > >>>
> > > > >>> > uhm...that's not good :S
> > > > >>> >
> > > > >>> > the annotation is this one:
> > > > >>> >
> > > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > > > >>> > javax/cache/annotation/CacheResult.html
> > > > >>> >
> > > > >>> > is there a way that using that annotation we get the
> interceptor
> > to
> > > > >>> work?
> > > > >>> > (I can implement the interceptor myself....as I said I cannot
> > > modify
> > > > >>> the
> > > > >>> > annotation as it is javax packge)
> > > > >>> >
> > > > >>> >
> > > > >>> >
> > > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > > > >>> > andraschko.thomas@gmail.com> wrote:
> > > > >>> >
> > > > >>> > > Just to be clear: I have no idea how internally CacheResult
> > works
> > > > >>> but our
> > > > >>> > > partial beans only supports CDI interceptors by a binding
> > > > >>> > > (InterceptorBinding).
> > > > >>> > > Everything else, like stated in the doc (@Interceptors,
> > > > @Intercepted,
> > > > >>> > > @Decorator), is not supported.
> > > > >>> > >
> > > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > > > >>> > andraschko.thomas@gmail.com
> > > > >>> > > >:
> > > > >>> > >
> > > > >>> > > > In must not work without the interceptorbinding. Do you
> mean
> > > that
> > > > >>> it
> > > > >>> > does
> > > > >>> > > > work without?
> > > > >>> > > >
> > > > >>> > > >
> > > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > > >>> > > >
> > > > >>> > > >> can you update your test to remove @InterceptorBinding?
> and
> > > > check
> > > > >>> if
> > > > >>> > it
> > > > >>> > > >> works?
> > > > >>> > > >>
> > > > >>> > > >>  javax.cache.annotation.CacheResult is standard so I
> don't
> > > want
> > > > >>> to
> > > > >>> > > extend
> > > > >>> > > >> it to have the @InterceptorBinding.....if this is really
> the
> > > > >>> problem.
> > > > >>> > > >>
> > > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > > > >>> luisalves00@gmail.com>
> > > > >>> > > >> wrote:
> > > > >>> > > >>
> > > > >>> > > >> > @Retention(RUNTIME)
> > > > >>> > > >> > @Target({ TYPE, METHOD })
> > > > >>> > > >> > // @InterceptorBinding
> > > > >>> > > >> > public @interface CustomInterceptor
> > > > >>> > > >> > {
> > > > >>> > > >> > }
> > > > >>> > > >> >
> > > > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> > > > >>> sure....what
> > > > >>> > is
> > > > >>> > > >> the
> > > > >>> > > >> > purpose of that?
> > > > >>> > > >> >
> > > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > > > >>> luisalves00@gmail.com>
> > > > >>> > > >> wrote:
> > > > >>> > > >> >
> > > > >>> > > >> >> don't you want to rewrite your tests with the
> > @CacheResult
> > > > >>> > > interceptor
> > > > >>> > > >> ;)
> > > > >>> > > >> >> ? to see if it works?
> > > > >>> > > >> >>
> > > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > > >>> > > >> >>
> > > > >>> > > >> >>> No idea, debug if the interceptor is really called ;)
> > > > >>> > > >> >>>
> > > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > > > luisalves00@gmail.com
> > > > >>> >:
> > > > >>> > > >> >>>
> > > > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > > > interceptor
> > > > >>> for
> > > > >>> > > the
> > > > >>> > > >> >>> web app
> > > > >>> > > >> >>> > beans.xml and now it gets called....SO it should
> work
> > > for
> > > > >>> the
> > > > >>> > > cache
> > > > >>> > > >> as
> > > > >>> > > >> >>> > well. Any hint?
> > > > >>> > > >> >>> >
> > > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > > > >>> > > luisalves00@gmail.com
> > > > >>> > > >> >
> > > > >>> > > >> >>> > wrote:
> > > > >>> > > >> >>> >
> > > > >>> > > >> >>> > > So I've created a custom one (in fact is a "copy"
> of
> > > > yours
> > > > >>> > that
> > > > >>> > > >> logs
> > > > >>> > > >> >>> a
> > > > >>> > > >> >>> > > line):
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > @Interceptor
> > > > >>> > > >> >>> > > @CustomInterceptor
> > > > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > > > Serializable
> > > > >>> > > >> >>> > > {
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >     private static final long serialVersionUID =
> > > > >>> > > >> >>> 7327752605570037403L;
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >     @Inject
> > > > >>> > > >> >>> > >     private Logger logger;
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >     @AroundInvoke
> > > > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> > > > >>> > > invocationContext)
> > > > >>> > > >> >>> throws
> > > > >>> > > >> >>> > > Exception
> > > > >>> > > >> >>> > >     {
> > > > >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl
> > was
> > > > >>> > called");
> > > > >>> > > >> >>> > >         return invocationContext.proceed();
> > > > >>> > > >> >>> > >     }
> > > > >>> > > >> >>> > > }
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > registered on the beans.xml (for service and repo
> > > > layers):
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > > >>> xmlns:xsi="
> > > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > > java.sun.com/xml/ns/javaee
> > > > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >     <interceptors>
> > > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > > >>> > > >> >>> > >     ...
> > > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > > > >>> > CustomInterceptorImpl</class>
> > > > >>> > > >> >>> > >     </interceptors>
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > </beans>
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > It's called on the service layer but not on the
> > > > >>> @Repository :(
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas
> Andraschko
> > <
> > > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >> You can try with a custom interceptor and check
> if
> > > it's
> > > > >>> > > invoked?
> > > > >>> > > >> >>> > >>
> > > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > > > >>> weld-2.0.0.SP1? We
> > > > >>> > > >> have a
> > > > >>> > > >> >>> > >> exclusion for this in the unit test as there is
> > > > something
> > > > >>> > > broken,
> > > > >>> > > >> >>> as you
> > > > >>> > > >> >>> > >> can check in the link i posted before.
> > > > >>> > > >> >>> > >> Otherwise, it would be great if you could
> provide a
> > > > >>> unittest
> > > > >>> > > for
> > > > >>> > > >> the
> > > > >>> > > >> >>> > data
> > > > >>> > > >> >>> > >> module.
> > > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > > > >>> > > >> >>> > >>
> > > > >>> > > >> >>> > >>
> > > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > > > >>> luisalves00@gmail.com
> > > > >>> > >:
> > > > >>> > > >> >>> > >>
> > > > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >> > @ApplicationScoped
> > > > >>> > > >> >>> > >> > @Repository
> > > > >>> > > >> >>> > >> > public abstract class SomeRepository
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
> > > > wrong.
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > > > >>> > > >> >>> luisalves00@gmail.com>
> > > > >>> > > >> >>> > >> > wrote:
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
> > now...but
> > > > >>> still
> > > > >>> > > can't
> > > > >>> > > >> >>> get the
> > > > >>> > > >> >>> > >> > cache
> > > > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
> > xml/ns/javaee"
> > > > >>> > > xmlns:xsi="
> > > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > > > >>> > java.sun.com/xml/ns/javaee
> > > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> > javaee/beans_1_0.xsd
> > > ">
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > >     <interceptors>
> > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> annotations.cdi.
> > > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.
> annotations.cdi.
> > > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > > >>> > > >> >>> > >> > > class>
> > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > > >>> > > >> >>> > >> tor</
> > > > >>> > > >> >>> > >> > > class>
> > > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > > >>> > > >> >>> > >> class>
> > > > >>> > > >> >>> > >> > >     </interceptors>
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > > </beans>
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > > LA
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves
> <
> > > > >>> > > >> >>> luisalves00@gmail.com
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >> > > wrote:
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >> if I understood correctly if they are on the
> > > > >>> bean.xml
> > > > >>> > they
> > > > >>> > > >> >>> should
> > > > >>> > > >> >>> > >> works
> > > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it
> before)
> > > > >>> getting:
> > > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > > > >>> > > >> l.RepositoryDefinitionException:
> > > > >>> > > >> >>> > >> > >> Repository creation for class class
> > > > >>> CustomBaseRepository
> > > > >>> > > >> >>> failed. Is
> > > > >>> > > >> >>> > >> it
> > > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this
> > base
> > > > >>> class
> > > > >>> > for
> > > > >>> > > >> some
> > > > >>> > > >> >>> > >> > repositories
> > > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository
> <E
> > > > >>> extends
> > > > >>> > > >> >>> > >> DomainObject<K>, K
> > > > >>> > > >> >>> > >> > >> extends Serializable>
> > > > >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E,
> K>
> > > > >>> > > >> >>> > >> > >> {
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to
> > work
> > > > >>> with
> > > > >>> > the
> > > > >>> > > >> >>> Repos...
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > > > Andraschko
> > > > >>> <
> > > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >>> See:
> > > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > > > >>> > > >> aspike/tree/master/deltaspike/
> > > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > > > >>> > > >> test/java/org/apache/deltaspik
> > > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > > > >>> > > >> >>> > >> > >>>
> > > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas
> Andraschko
> > <
> > > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > > > >>> > > >> >>> > >> > >>>
> > > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
> > supported
> > > > but
> > > > >>> only
> > > > >>> > > via
> > > > >>> > > >> >>> custom
> > > > >>> > > >> >>> > >> > >>> binding -
> > > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> > > > >>> @Decorator"
> > > > >>> > > >> >>> > >> > >>> >
> > > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > > > >>> > > >> >>> luisalves00@gmail.com>:
> > > > >>> > > >> >>> > >> > >>> >
> > > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
> > actually
> > > a
> > > > >>> > > >> >>> > @PartialBeanBinding
> > > > >>> > > >> >>> > >> > and
> > > > >>> > > >> >>> > >> > >>> I
> > > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors
> applied
> > > via
> > > > >>> > > >> >>> @Interceptors,
> > > > >>> > > >> >>> > >> > >>> @Intercepted
> > > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
> > > > proxies!
> > > > >>> > > >> "...does
> > > > >>> > > >> >>> it
> > > > >>> > > >> >>> > >> means
> > > > >>> > > >> >>> > >> > >>> that
> > > > >>> > > >> >>> > >> > >>> >> I'm
> > > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > > >>> > > >> >>> > >> > >>> >>
> > > > >>> > > >> >>> > >> > >>> >> LA
> > > > >>> > > >> >>> > >> > >>> >>
> > > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
> > > Alves <
> > > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > >>> > > >> >>> > >> > >>> >>
> > > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> > > interceptor
> > > > >>> is
> > > > >>> > not
> > > > >>> > > >> >>> working
> > > > >>> > > >> >>> > :(
> > > > >>> > > >> >>> > >> > can't
> > > > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository
> > methods
> > > > be
> > > > >>> > > >> >>> intercepted?
> > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís
> > > Alves
> > > > <
> > > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > > >>> > > >> >>> > >> > >>> >> wrote:
> > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be
> > OK...I
> > > > >>> guess
> > > > >>> > it's
> > > > >>> > > >> like
> > > > >>> > > >> >>> > >> > Spring's
> > > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
> > > > Alves <
> > > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > > >>> > > >> >>> > >> > >>> >
> > > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent
> scoped...and
> > > > seems
> > > > >>> > that
> > > > >>> > > >> >>> > @Dependent
> > > > >>> > > >> >>> > >> > >>> don't run
> > > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> > @CacheResult(cacheName
> > > =
> > > > >>> > > >> "my-cache")
> > > > >>> > > >> >>> > >> annotation
> > > > >>> > > >> >>> > >> > >>> isn't
> > > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed
> that
> > > > >>> > @Repository
> > > > >>> > > >> >>> > >> could/should
> > > > >>> > > >> >>> > >> > be
> > > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change
> them
> > > do
> > > > I
> > > > >>> have
> > > > >>> > > to
> > > > >>> > > >> >>> worry
> > > > >>> > > >> >>> > >> with
> > > > >>> > > >> >>> > >> > >>> >> anything? My
> > > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
> > following:
> > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM
> for
> > > > each
> > > > >>> HTTP
> > > > >>> > > >> >>> request /
> > > > >>> > > >> >>> > >> MDB
> > > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> > @Scheduled(cronExpression
> > > > >>> > > >> ="....")...am I
> > > > >>> > > >> >>> > >> correct?
> > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > > >>> > > >> >>> > >> > >>> >> >>>
> > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>> > > >> >>> > >> > >>> >> >>
> > > > >>> > > >> >>> > >> > >>> >> >
> > > > >>> > > >> >>> > >> > >>> >>
> > > > >>> > > >> >>> > >> > >>> >
> > > > >>> > > >> >>> > >> > >>> >
> > > > >>> > > >> >>> > >> > >>>
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >>
> > > > >>> > > >> >>> > >> > >
> > > > >>> > > >> >>> > >> >
> > > > >>> > > >> >>> > >>
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> > >
> > > > >>> > > >> >>> >
> > > > >>> > > >> >>>
> > > > >>> > > >> >>
> > > > >>> > > >> >>
> > > > >>> > > >> >
> > > > >>> > > >>
> > > > >>> > > >
> > > > >>> > >
> > > > >>> >
> > > > >>>
> > > > >>
> > > > >>
> > > > >
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Yep, they add the interceptorBinding dynamically:
https://github.com/jsr107/RI/blob/master/cache-annotations-ri/cache-annotations-ri-cdi/src/main/java/org/jsr107/ri/annotations/cdi/InterceptorExtension.java

Just check our code here:
https://github.com/apache/deltaspike/blob/master/deltaspike/modules/proxy/api/src/main/java/org/apache/deltaspike/proxy/spi/invocation/DeltaSpikeProxyInterceptorLookup.java#L90

This code would need ask CDI if this annotation is a interceptor binding
(if possible, not sure if it's in the CDI API). Then your case should work.

2018-04-20 16:25 GMT+02:00 Luís Alves <lu...@gmail.com>:

> This is the reference implementation of the interceptors:
> https://github.com/jsr107/RI
> They have:
>
> <beans xmlns="http://java.sun.com/xml/ns/javaee"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xsi:schemaLocation="
> http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>     <interceptors>
>         <class>org.jsr107.ri.annotations.cdi.
> CacheResultInterceptor</class>
>         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
>
> <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</class>
>
> <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
>     </interceptors>
> </beans>
>
> and they have 2files with:
>
> org.jsr107.ri.annotations.cdi.InterceptorExtension
>
> and
>
> org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl
>
> The interceptors work on a normal cdi bean.
>
> On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > AFAIK there 2 ways of using interceptors with CDI:
> >
> > 1) @InterceptorBinding
> > 2) @Interceptors(..)
> >
> > We only support 1) currently.
> >
> > So i have currently no idea how @CacheResult will work even a normal CDI
> > bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
> >
> >
> >
> >
> > 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> > > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > > I suppose they will tell the issue is from DS...:(
> > >
> > >
> > > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com>
> > wrote:
> > >
> > > > I suppose it's CDI capable.
> > > >
> > > > https://www.jcp.org/en/jsr/detail?id=107
> > > >
> > > > Red Hat
> > > > : Pete Muir   <---  is on the expert group
> > > >
> > > >
> > > >  * @author Gavin King
> > > >  * @author Pete Muir
> > > >  * @author Antoine Sabot-Durand
> > > >  */
> > > >
> > > > @Target({ TYPE, METHOD, FIELD })
> > > > @Retention(RUNTIME)
> > > > @Documented
> > > > @NormalScope
> > > > @Inherited
> > > > public @interface ApplicationScoped {
> > > >
> > > > }
> > > >
> > > >
> > > > what I don't understand is how DS look for the interceptors? Can you
> > > point
> > > > me out the code?
> > > > Isn't possible to look for all annotations even if they don't have
> > > > @InterceptorBinding and then look for the registered interceptors?
> > > >
> > > >
> > > >
> > > >
> > > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > > >
> > > >> I suppose it's CDI capable.
> > > >>
> > > >> https://www.jcp.org/en/jsr/detail?id=107
> > > >>
> > > >>
> > > >>
> > > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > > >> andraschko.thomas@gmail.com> wrote:
> > > >>
> > > >>> Puh, i wonder why they did it without binding. CacheResult is
> > actually
> > > >>> exactly a binding for the interceptor.
> > > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > > >>>
> > > >>> Even there is a bridge or something available (
> > > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this
> would
> > > >>> work
> > > >>> with the limited ability to add interceptors to partial beans.
> > > >>>
> > > >>> I think the best solution for now is to create a own binding.
> > > >>>
> > > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > >>>
> > > >>> > uhm...that's not good :S
> > > >>> >
> > > >>> > the annotation is this one:
> > > >>> >
> > > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > > >>> > javax/cache/annotation/CacheResult.html
> > > >>> >
> > > >>> > is there a way that using that annotation we get the interceptor
> to
> > > >>> work?
> > > >>> > (I can implement the interceptor myself....as I said I cannot
> > modify
> > > >>> the
> > > >>> > annotation as it is javax packge)
> > > >>> >
> > > >>> >
> > > >>> >
> > > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > > >>> > andraschko.thomas@gmail.com> wrote:
> > > >>> >
> > > >>> > > Just to be clear: I have no idea how internally CacheResult
> works
> > > >>> but our
> > > >>> > > partial beans only supports CDI interceptors by a binding
> > > >>> > > (InterceptorBinding).
> > > >>> > > Everything else, like stated in the doc (@Interceptors,
> > > @Intercepted,
> > > >>> > > @Decorator), is not supported.
> > > >>> > >
> > > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > > >>> > andraschko.thomas@gmail.com
> > > >>> > > >:
> > > >>> > >
> > > >>> > > > In must not work without the interceptorbinding. Do you mean
> > that
> > > >>> it
> > > >>> > does
> > > >>> > > > work without?
> > > >>> > > >
> > > >>> > > >
> > > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > >>> > > >
> > > >>> > > >> can you update your test to remove @InterceptorBinding? and
> > > check
> > > >>> if
> > > >>> > it
> > > >>> > > >> works?
> > > >>> > > >>
> > > >>> > > >>  javax.cache.annotation.CacheResult is standard so I don't
> > want
> > > >>> to
> > > >>> > > extend
> > > >>> > > >> it to have the @InterceptorBinding.....if this is really the
> > > >>> problem.
> > > >>> > > >>
> > > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > > >>> luisalves00@gmail.com>
> > > >>> > > >> wrote:
> > > >>> > > >>
> > > >>> > > >> > @Retention(RUNTIME)
> > > >>> > > >> > @Target({ TYPE, METHOD })
> > > >>> > > >> > // @InterceptorBinding
> > > >>> > > >> > public @interface CustomInterceptor
> > > >>> > > >> > {
> > > >>> > > >> > }
> > > >>> > > >> >
> > > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> > > >>> sure....what
> > > >>> > is
> > > >>> > > >> the
> > > >>> > > >> > purpose of that?
> > > >>> > > >> >
> > > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > > >>> luisalves00@gmail.com>
> > > >>> > > >> wrote:
> > > >>> > > >> >
> > > >>> > > >> >> don't you want to rewrite your tests with the
> @CacheResult
> > > >>> > > interceptor
> > > >>> > > >> ;)
> > > >>> > > >> >> ? to see if it works?
> > > >>> > > >> >>
> > > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > >>> > > >> >>
> > > >>> > > >> >>> No idea, debug if the interceptor is really called ;)
> > > >>> > > >> >>>
> > > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > > luisalves00@gmail.com
> > > >>> >:
> > > >>> > > >> >>>
> > > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > > interceptor
> > > >>> for
> > > >>> > > the
> > > >>> > > >> >>> web app
> > > >>> > > >> >>> > beans.xml and now it gets called....SO it should work
> > for
> > > >>> the
> > > >>> > > cache
> > > >>> > > >> as
> > > >>> > > >> >>> > well. Any hint?
> > > >>> > > >> >>> >
> > > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > > >>> > > luisalves00@gmail.com
> > > >>> > > >> >
> > > >>> > > >> >>> > wrote:
> > > >>> > > >> >>> >
> > > >>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of
> > > yours
> > > >>> > that
> > > >>> > > >> logs
> > > >>> > > >> >>> a
> > > >>> > > >> >>> > > line):
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > @Interceptor
> > > >>> > > >> >>> > > @CustomInterceptor
> > > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > > Serializable
> > > >>> > > >> >>> > > {
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >     private static final long serialVersionUID =
> > > >>> > > >> >>> 7327752605570037403L;
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >     @Inject
> > > >>> > > >> >>> > >     private Logger logger;
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >     @AroundInvoke
> > > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> > > >>> > > invocationContext)
> > > >>> > > >> >>> throws
> > > >>> > > >> >>> > > Exception
> > > >>> > > >> >>> > >     {
> > > >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl
> was
> > > >>> > called");
> > > >>> > > >> >>> > >         return invocationContext.proceed();
> > > >>> > > >> >>> > >     }
> > > >>> > > >> >>> > > }
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > registered on the beans.xml (for service and repo
> > > layers):
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > >>> xmlns:xsi="
> > > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > > java.sun.com/xml/ns/javaee
> > > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >     <interceptors>
> > > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >>> > > >> >>> > > CacheResultInterceptor</class>
> > > >>> > > >> >>> > >     ...
> > > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > > >>> > CustomInterceptorImpl</class>
> > > >>> > > >> >>> > >     </interceptors>
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > </beans>
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > It's called on the service layer but not on the
> > > >>> @Repository :(
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko
> <
> > > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >> You can try with a custom interceptor and check if
> > it's
> > > >>> > > invoked?
> > > >>> > > >> >>> > >>
> > > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > > >>> weld-2.0.0.SP1? We
> > > >>> > > >> have a
> > > >>> > > >> >>> > >> exclusion for this in the unit test as there is
> > > something
> > > >>> > > broken,
> > > >>> > > >> >>> as you
> > > >>> > > >> >>> > >> can check in the link i posted before.
> > > >>> > > >> >>> > >> Otherwise, it would be great if you could provide a
> > > >>> unittest
> > > >>> > > for
> > > >>> > > >> the
> > > >>> > > >> >>> > data
> > > >>> > > >> >>> > >> module.
> > > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > > >>> > > >> >>> > >>
> > > >>> > > >> >>> > >>
> > > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > > >>> luisalves00@gmail.com
> > > >>> > >:
> > > >>> > > >> >>> > >>
> > > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >> > @ApplicationScoped
> > > >>> > > >> >>> > >> > @Repository
> > > >>> > > >> >>> > >> > public abstract class SomeRepository
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
> > > wrong.
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > > >>> > > >> >>> luisalves00@gmail.com>
> > > >>> > > >> >>> > >> > wrote:
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for
> now...but
> > > >>> still
> > > >>> > > can't
> > > >>> > > >> >>> get the
> > > >>> > > >> >>> > >> > cache
> > > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/
> xml/ns/javaee"
> > > >>> > > xmlns:xsi="
> > > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > > >>> > java.sun.com/xml/ns/javaee
> > > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/
> javaee/beans_1_0.xsd
> > ">
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > >     <interceptors>
> > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > >>> > > >> >>> > >> > > class>
> > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > >>> > > >> >>> > >> tor</
> > > >>> > > >> >>> > >> > > class>
> > > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > > >>> > > >> >>> > >> class>
> > > >>> > > >> >>> > >> > >     </interceptors>
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > > </beans>
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > > LA
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> > > >>> > > >> >>> luisalves00@gmail.com
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >> > > wrote:
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > >> Thanks Thomas,
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >> if I understood correctly if they are on the
> > > >>> bean.xml
> > > >>> > they
> > > >>> > > >> >>> should
> > > >>> > > >> >>> > >> works
> > > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
> > > >>> getting:
> > > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > > >>> > > >> l.RepositoryDefinitionException:
> > > >>> > > >> >>> > >> > >> Repository creation for class class
> > > >>> CustomBaseRepository
> > > >>> > > >> >>> failed. Is
> > > >>> > > >> >>> > >> it
> > > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this
> base
> > > >>> class
> > > >>> > for
> > > >>> > > >> some
> > > >>> > > >> >>> > >> > repositories
> > > >>> > > >> >>> > >> > >> for some similar behavior:
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
> > > >>> extends
> > > >>> > > >> >>> > >> DomainObject<K>, K
> > > >>> > > >> >>> > >> > >> extends Serializable>
> > > >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> > > >>> > > >> >>> > >> > >> {
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to
> work
> > > >>> with
> > > >>> > the
> > > >>> > > >> >>> Repos...
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > > Andraschko
> > > >>> <
> > > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >>> See:
> > > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > > >>> > > >> aspike/tree/master/deltaspike/
> > > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > > >>> > > >> test/java/org/apache/deltaspik
> > > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > > >>> > > >> >>> > >> > >>>
> > > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko
> <
> > > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > > >>> > > >> >>> > >> > >>>
> > > >>> > > >> >>> > >> > >>> > Interceptors in generell should be
> supported
> > > but
> > > >>> only
> > > >>> > > via
> > > >>> > > >> >>> custom
> > > >>> > > >> >>> > >> > >>> binding -
> > > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> > > >>> @Decorator"
> > > >>> > > >> >>> > >> > >>> >
> > > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > > >>> > > >> >>> luisalves00@gmail.com>:
> > > >>> > > >> >>> > >> > >>> >
> > > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is
> actually
> > a
> > > >>> > > >> >>> > @PartialBeanBinding
> > > >>> > > >> >>> > >> > and
> > > >>> > > >> >>> > >> > >>> I
> > > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied
> > via
> > > >>> > > >> >>> @Interceptors,
> > > >>> > > >> >>> > >> > >>> @Intercepted
> > > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
> > > proxies!
> > > >>> > > >> "...does
> > > >>> > > >> >>> it
> > > >>> > > >> >>> > >> means
> > > >>> > > >> >>> > >> > >>> that
> > > >>> > > >> >>> > >> > >>> >> I'm
> > > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > > >>> > > >> >>> > >> > >>> >>
> > > >>> > > >> >>> > >> > >>> >> LA
> > > >>> > > >> >>> > >> > >>> >>
> > > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
> > Alves <
> > > >>> > > >> >>> > >> luisalves00@gmail.com
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> > >>> >> wrote:
> > > >>> > > >> >>> > >> > >>> >>
> > > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> > interceptor
> > > >>> is
> > > >>> > not
> > > >>> > > >> >>> working
> > > >>> > > >> >>> > :(
> > > >>> > > >> >>> > >> > can't
> > > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository
> methods
> > > be
> > > >>> > > >> >>> intercepted?
> > > >>> > > >> >>> > >> > >>> >> >
> > > >>> > > >> >>> > >> > >>> >> >
> > > >>> > > >> >>> > >> > >>> >> >
> > > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís
> > Alves
> > > <
> > > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > > >>> > > >> >>> > >> > >>> >> wrote:
> > > >>> > > >> >>> > >> > >>> >> >
> > > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be
> OK...I
> > > >>> guess
> > > >>> > it's
> > > >>> > > >> like
> > > >>> > > >> >>> > >> > Spring's
> > > >>> > > >> >>> > >> > >>> >> >> repositories.
> > > >>> > > >> >>> > >> > >>> >> >>
> > > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
> > > Alves <
> > > >>> > > >> >>> > >> > luisalves00@gmail.com
> > > >>> > > >> >>> > >> > >>> >
> > > >>> > > >> >>> > >> > >>> >> >> wrote:
> > > >>> > > >> >>> > >> > >>> >> >>
> > > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and
> > > seems
> > > >>> > that
> > > >>> > > >> >>> > @Dependent
> > > >>> > > >> >>> > >> > >>> don't run
> > > >>> > > >> >>> > >> > >>> >> >>> interceptors, so
> @CacheResult(cacheName
> > =
> > > >>> > > >> "my-cache")
> > > >>> > > >> >>> > >> annotation
> > > >>> > > >> >>> > >> > >>> isn't
> > > >>> > > >> >>> > >> > >>> >> >>> working :(
> > > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> > > >>> > @Repository
> > > >>> > > >> >>> > >> could/should
> > > >>> > > >> >>> > >> > be
> > > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them
> > do
> > > I
> > > >>> have
> > > >>> > > to
> > > >>> > > >> >>> worry
> > > >>> > > >> >>> > >> with
> > > >>> > > >> >>> > >> > >>> >> anything? My
> > > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the
> following:
> > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > > >>> > > >> >>> > >> > >>> >> >>>     {
> > > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > > >>> > > >> >>> > >> > >>> >> >>>     }
> > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for
> > > each
> > > >>> HTTP
> > > >>> > > >> >>> request /
> > > >>> > > >> >>> > >> MDB
> > > >>> > > >> >>> > >> > >>> >> >>> onMessage() /
> @Scheduled(cronExpression
> > > >>> > > >> ="....")...am I
> > > >>> > > >> >>> > >> correct?
> > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>> > > >> >>> > >> > >>> >> >>> regards,
> > > >>> > > >> >>> > >> > >>> >> >>> LA
> > > >>> > > >> >>> > >> > >>> >> >>>
> > > >>> > > >> >>> > >> > >>> >> >>
> > > >>> > > >> >>> > >> > >>> >> >>
> > > >>> > > >> >>> > >> > >>> >> >
> > > >>> > > >> >>> > >> > >>> >>
> > > >>> > > >> >>> > >> > >>> >
> > > >>> > > >> >>> > >> > >>> >
> > > >>> > > >> >>> > >> > >>>
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >>
> > > >>> > > >> >>> > >> > >
> > > >>> > > >> >>> > >> >
> > > >>> > > >> >>> > >>
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> > >
> > > >>> > > >> >>> >
> > > >>> > > >> >>>
> > > >>> > > >> >>
> > > >>> > > >> >>
> > > >>> > > >> >
> > > >>> > > >>
> > > >>> > > >
> > > >>> > >
> > > >>> >
> > > >>>
> > > >>
> > > >>
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
This is the reference implementation of the interceptors:
https://github.com/jsr107/RI
They have:

<beans xmlns="http://java.sun.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
    <interceptors>
        <class>org.jsr107.ri.annotations.cdi.CacheResultInterceptor</class>
        <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
    </interceptors>
</beans>

and they have 2files with:

org.jsr107.ri.annotations.cdi.InterceptorExtension

and

org.jsr107.ri.annotations.cdi.CdiAnnotationProviderImpl

The interceptors work on a normal cdi bean.

On Fri, Apr 20, 2018 at 3:17 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> AFAIK there 2 ways of using interceptors with CDI:
>
> 1) @InterceptorBinding
> 2) @Interceptors(..)
>
> We only support 1) currently.
>
> So i have currently no idea how @CacheResult will work even a normal CDI
> bean. Maybe it's done in Wildfly but not via the "normal" CDI way.
>
>
>
>
> 2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > Submitted: https://github.com/jsr107/jsr107spec/issues/401
> > I suppose they will tell the issue is from DS...:(
> >
> >
> > On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> > > I suppose it's CDI capable.
> > >
> > > https://www.jcp.org/en/jsr/detail?id=107
> > >
> > > Red Hat
> > > : Pete Muir   <---  is on the expert group
> > >
> > >
> > >  * @author Gavin King
> > >  * @author Pete Muir
> > >  * @author Antoine Sabot-Durand
> > >  */
> > >
> > > @Target({ TYPE, METHOD, FIELD })
> > > @Retention(RUNTIME)
> > > @Documented
> > > @NormalScope
> > > @Inherited
> > > public @interface ApplicationScoped {
> > >
> > > }
> > >
> > >
> > > what I don't understand is how DS look for the interceptors? Can you
> > point
> > > me out the code?
> > > Isn't possible to look for all annotations even if they don't have
> > > @InterceptorBinding and then look for the registered interceptors?
> > >
> > >
> > >
> > >
> > > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com>
> > wrote:
> > >
> > >> I suppose it's CDI capable.
> > >>
> > >> https://www.jcp.org/en/jsr/detail?id=107
> > >>
> > >>
> > >>
> > >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> > >> andraschko.thomas@gmail.com> wrote:
> > >>
> > >>> Puh, i wonder why they did it without binding. CacheResult is
> actually
> > >>> exactly a binding for the interceptor.
> > >>> Is it CDI compatible? Never had a look at the cache API ;)
> > >>>
> > >>> Even there is a bridge or something available (
> > >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would
> > >>> work
> > >>> with the limited ability to add interceptors to partial beans.
> > >>>
> > >>> I think the best solution for now is to create a own binding.
> > >>>
> > >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >>>
> > >>> > uhm...that's not good :S
> > >>> >
> > >>> > the annotation is this one:
> > >>> >
> > >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > >>> > javax/cache/annotation/CacheResult.html
> > >>> >
> > >>> > is there a way that using that annotation we get the interceptor to
> > >>> work?
> > >>> > (I can implement the interceptor myself....as I said I cannot
> modify
> > >>> the
> > >>> > annotation as it is javax packge)
> > >>> >
> > >>> >
> > >>> >
> > >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > >>> > andraschko.thomas@gmail.com> wrote:
> > >>> >
> > >>> > > Just to be clear: I have no idea how internally CacheResult works
> > >>> but our
> > >>> > > partial beans only supports CDI interceptors by a binding
> > >>> > > (InterceptorBinding).
> > >>> > > Everything else, like stated in the doc (@Interceptors,
> > @Intercepted,
> > >>> > > @Decorator), is not supported.
> > >>> > >
> > >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > >>> > andraschko.thomas@gmail.com
> > >>> > > >:
> > >>> > >
> > >>> > > > In must not work without the interceptorbinding. Do you mean
> that
> > >>> it
> > >>> > does
> > >>> > > > work without?
> > >>> > > >
> > >>> > > >
> > >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >>> > > >
> > >>> > > >> can you update your test to remove @InterceptorBinding? and
> > check
> > >>> if
> > >>> > it
> > >>> > > >> works?
> > >>> > > >>
> > >>> > > >>  javax.cache.annotation.CacheResult is standard so I don't
> want
> > >>> to
> > >>> > > extend
> > >>> > > >> it to have the @InterceptorBinding.....if this is really the
> > >>> problem.
> > >>> > > >>
> > >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> > >>> luisalves00@gmail.com>
> > >>> > > >> wrote:
> > >>> > > >>
> > >>> > > >> > @Retention(RUNTIME)
> > >>> > > >> > @Target({ TYPE, METHOD })
> > >>> > > >> > // @InterceptorBinding
> > >>> > > >> > public @interface CustomInterceptor
> > >>> > > >> > {
> > >>> > > >> > }
> > >>> > > >> >
> > >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> > >>> sure....what
> > >>> > is
> > >>> > > >> the
> > >>> > > >> > purpose of that?
> > >>> > > >> >
> > >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> > >>> luisalves00@gmail.com>
> > >>> > > >> wrote:
> > >>> > > >> >
> > >>> > > >> >> don't you want to rewrite your tests with the @CacheResult
> > >>> > > interceptor
> > >>> > > >> ;)
> > >>> > > >> >> ? to see if it works?
> > >>> > > >> >>
> > >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> > >>> > > >> >>
> > >>> > > >> >>> No idea, debug if the interceptor is really called ;)
> > >>> > > >> >>>
> > >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> > luisalves00@gmail.com
> > >>> >:
> > >>> > > >> >>>
> > >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> > interceptor
> > >>> for
> > >>> > > the
> > >>> > > >> >>> web app
> > >>> > > >> >>> > beans.xml and now it gets called....SO it should work
> for
> > >>> the
> > >>> > > cache
> > >>> > > >> as
> > >>> > > >> >>> > well. Any hint?
> > >>> > > >> >>> >
> > >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > >>> > > luisalves00@gmail.com
> > >>> > > >> >
> > >>> > > >> >>> > wrote:
> > >>> > > >> >>> >
> > >>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of
> > yours
> > >>> > that
> > >>> > > >> logs
> > >>> > > >> >>> a
> > >>> > > >> >>> > > line):
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > @Interceptor
> > >>> > > >> >>> > > @CustomInterceptor
> > >>> > > >> >>> > > public class CustomInterceptorImpl implements
> > Serializable
> > >>> > > >> >>> > > {
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     private static final long serialVersionUID =
> > >>> > > >> >>> 7327752605570037403L;
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     @Inject
> > >>> > > >> >>> > >     private Logger logger;
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     @AroundInvoke
> > >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> > >>> > > invocationContext)
> > >>> > > >> >>> throws
> > >>> > > >> >>> > > Exception
> > >>> > > >> >>> > >     {
> > >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
> > >>> > called");
> > >>> > > >> >>> > >         return invocationContext.proceed();
> > >>> > > >> >>> > >     }
> > >>> > > >> >>> > > }
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > registered on the beans.xml (for service and repo
> > layers):
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > >>> xmlns:xsi="
> > >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > >>> > > >> >>> > >     xsi:schemaLocation="http://
> > java.sun.com/xml/ns/javaee
> > >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >     <interceptors>
> > >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > > CacheResultInterceptor</class>
> > >>> > > >> >>> > >     ...
> > >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > >>> > CustomInterceptorImpl</class>
> > >>> > > >> >>> > >     </interceptors>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > </beans>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > It's called on the service layer but not on the
> > >>> @Repository :(
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >> You can try with a custom interceptor and check if
> it's
> > >>> > > invoked?
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> > >>> weld-2.0.0.SP1? We
> > >>> > > >> have a
> > >>> > > >> >>> > >> exclusion for this in the unit test as there is
> > something
> > >>> > > broken,
> > >>> > > >> >>> as you
> > >>> > > >> >>> > >> can check in the link i posted before.
> > >>> > > >> >>> > >> Otherwise, it would be great if you could provide a
> > >>> unittest
> > >>> > > for
> > >>> > > >> the
> > >>> > > >> >>> > data
> > >>> > > >> >>> > >> module.
> > >>> > > >> >>> > >> I don't have time to prepare it by myself.
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> > >>> luisalves00@gmail.com
> > >>> > >:
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >> > So far no success...@CacheResult on
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > @ApplicationScoped
> > >>> > > >> >>> > >> > @Repository
> > >>> > > >> >>> > >> > public abstract class SomeRepository
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
> > wrong.
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > >>> > > >> >>> luisalves00@gmail.com>
> > >>> > > >> >>> > >> > wrote:
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but
> > >>> still
> > >>> > > can't
> > >>> > > >> >>> get the
> > >>> > > >> >>> > >> > cache
> > >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > >>> > > xmlns:xsi="
> > >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > >>> > java.sun.com/xml/ns/javaee
> > >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd
> ">
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >     <interceptors>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > >>> > > >> >>> > >> > > class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > >>> > > >> >>> > >> tor</
> > >>> > > >> >>> > >> > > class>
> > >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >>> > > >> >>> ons.cdi.CachePutInterceptor</
> > >>> > > >> >>> > >> class>
> > >>> > > >> >>> > >> > >     </interceptors>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > </beans>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > LA
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> > >>> > > >> >>> luisalves00@gmail.com
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >> > > wrote:
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >> Thanks Thomas,
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> if I understood correctly if they are on the
> > >>> bean.xml
> > >>> > they
> > >>> > > >> >>> should
> > >>> > > >> >>> > >> works
> > >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
> > >>> getting:
> > >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > >>> > > >> l.RepositoryDefinitionException:
> > >>> > > >> >>> > >> > >> Repository creation for class class
> > >>> CustomBaseRepository
> > >>> > > >> >>> failed. Is
> > >>> > > >> >>> > >> it
> > >>> > > >> >>> > >> > >> associated with a valid Entity? I got this base
> > >>> class
> > >>> > for
> > >>> > > >> some
> > >>> > > >> >>> > >> > repositories
> > >>> > > >> >>> > >> > >> for some similar behavior:
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
> > >>> extends
> > >>> > > >> >>> > >> DomainObject<K>, K
> > >>> > > >> >>> > >> > >> extends Serializable>
> > >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> > >>> > > >> >>> > >> > >> {
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to work
> > >>> with
> > >>> > the
> > >>> > > >> >>> Repos...
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> > Andraschko
> > >>> <
> > >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>> See:
> > >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> > >>> > > >> aspike/tree/master/deltaspike/
> > >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > >>> > > >> test/java/org/apache/deltaspik
> > >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>> > Interceptors in generell should be supported
> > but
> > >>> only
> > >>> > > via
> > >>> > > >> >>> custom
> > >>> > > >> >>> > >> > >>> binding -
> > >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> > >>> @Decorator"
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > >>> > > >> >>> luisalves00@gmail.com>:
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >> So far I found that @Repository is actually
> a
> > >>> > > >> >>> > @PartialBeanBinding
> > >>> > > >> >>> > >> > and
> > >>> > > >> >>> > >> > >>> I
> > >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied
> via
> > >>> > > >> >>> @Interceptors,
> > >>> > > >> >>> > >> > >>> @Intercepted
> > >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
> > proxies!
> > >>> > > >> "...does
> > >>> > > >> >>> it
> > >>> > > >> >>> > >> means
> > >>> > > >> >>> > >> > >>> that
> > >>> > > >> >>> > >> > >>> >> I'm
> > >>> > > >> >>> > >> > >>> >> screwed ;)?
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> LA
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís
> Alves <
> > >>> > > >> >>> > >> luisalves00@gmail.com
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> > >>> >> wrote:
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the
> interceptor
> > >>> is
> > >>> > not
> > >>> > > >> >>> working
> > >>> > > >> >>> > :(
> > >>> > > >> >>> > >> > can't
> > >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods
> > be
> > >>> > > >> >>> intercepted?
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís
> Alves
> > <
> > >>> > > >> >>> > >> > luisalves00@gmail.com>
> > >>> > > >> >>> > >> > >>> >> wrote:
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I
> > >>> guess
> > >>> > it's
> > >>> > > >> like
> > >>> > > >> >>> > >> > Spring's
> > >>> > > >> >>> > >> > >>> >> >> repositories.
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
> > Alves <
> > >>> > > >> >>> > >> > luisalves00@gmail.com
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >> >> wrote:
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >>> Hi,
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and
> > seems
> > >>> > that
> > >>> > > >> >>> > @Dependent
> > >>> > > >> >>> > >> > >>> don't run
> > >>> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName
> =
> > >>> > > >> "my-cache")
> > >>> > > >> >>> > >> annotation
> > >>> > > >> >>> > >> > >>> isn't
> > >>> > > >> >>> > >> > >>> >> >>> working :(
> > >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> > >>> > @Repository
> > >>> > > >> >>> > >> could/should
> > >>> > > >> >>> > >> > be
> > >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them
> do
> > I
> > >>> have
> > >>> > > to
> > >>> > > >> >>> worry
> > >>> > > >> >>> > >> with
> > >>> > > >> >>> > >> > >>> >> anything? My
> > >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>>     @Produces
> > >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > >>> > > >> >>> > >> > >>> >> >>>     {
> > >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > >>> > > >> >>> > >> > >>> >> >>>     }
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for
> > each
> > >>> HTTP
> > >>> > > >> >>> request /
> > >>> > > >> >>> > >> MDB
> > >>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> > >>> > > >> ="....")...am I
> > >>> > > >> >>> > >> correct?
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>> regards,
> > >>> > > >> >>> > >> > >>> >> >>> LA
> > >>> > > >> >>> > >> > >>> >> >>>
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >>
> > >>> > > >> >>> > >> > >>> >> >
> > >>> > > >> >>> > >> > >>> >>
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>> >
> > >>> > > >> >>> > >> > >>>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >>
> > >>> > > >> >>> > >> > >
> > >>> > > >> >>> > >> >
> > >>> > > >> >>> > >>
> > >>> > > >> >>> > >
> > >>> > > >> >>> > >
> > >>> > > >> >>> >
> > >>> > > >> >>>
> > >>> > > >> >>
> > >>> > > >> >>
> > >>> > > >> >
> > >>> > > >>
> > >>> > > >
> > >>> > >
> > >>> >
> > >>>
> > >>
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
AFAIK there 2 ways of using interceptors with CDI:

1) @InterceptorBinding
2) @Interceptors(..)

We only support 1) currently.

So i have currently no idea how @CacheResult will work even a normal CDI
bean. Maybe it's done in Wildfly but not via the "normal" CDI way.




2018-04-20 15:48 GMT+02:00 Luís Alves <lu...@gmail.com>:

> Submitted: https://github.com/jsr107/jsr107spec/issues/401
> I suppose they will tell the issue is from DS...:(
>
>
> On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com> wrote:
>
> > I suppose it's CDI capable.
> >
> > https://www.jcp.org/en/jsr/detail?id=107
> >
> > Red Hat
> > : Pete Muir   <---  is on the expert group
> >
> >
> >  * @author Gavin King
> >  * @author Pete Muir
> >  * @author Antoine Sabot-Durand
> >  */
> >
> > @Target({ TYPE, METHOD, FIELD })
> > @Retention(RUNTIME)
> > @Documented
> > @NormalScope
> > @Inherited
> > public @interface ApplicationScoped {
> >
> > }
> >
> >
> > what I don't understand is how DS look for the interceptors? Can you
> point
> > me out the code?
> > Isn't possible to look for all annotations even if they don't have
> > @InterceptorBinding and then look for the registered interceptors?
> >
> >
> >
> >
> > On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> >> I suppose it's CDI capable.
> >>
> >> https://www.jcp.org/en/jsr/detail?id=107
> >>
> >>
> >>
> >> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> >> andraschko.thomas@gmail.com> wrote:
> >>
> >>> Puh, i wonder why they did it without binding. CacheResult is actually
> >>> exactly a binding for the interceptor.
> >>> Is it CDI compatible? Never had a look at the cache API ;)
> >>>
> >>> Even there is a bridge or something available (
> >>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would
> >>> work
> >>> with the limited ability to add interceptors to partial beans.
> >>>
> >>> I think the best solution for now is to create a own binding.
> >>>
> >>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>>
> >>> > uhm...that's not good :S
> >>> >
> >>> > the annotation is this one:
> >>> >
> >>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> >>> > javax/cache/annotation/CacheResult.html
> >>> >
> >>> > is there a way that using that annotation we get the interceptor to
> >>> work?
> >>> > (I can implement the interceptor myself....as I said I cannot modify
> >>> the
> >>> > annotation as it is javax packge)
> >>> >
> >>> >
> >>> >
> >>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> >>> > andraschko.thomas@gmail.com> wrote:
> >>> >
> >>> > > Just to be clear: I have no idea how internally CacheResult works
> >>> but our
> >>> > > partial beans only supports CDI interceptors by a binding
> >>> > > (InterceptorBinding).
> >>> > > Everything else, like stated in the doc (@Interceptors,
> @Intercepted,
> >>> > > @Decorator), is not supported.
> >>> > >
> >>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> >>> > andraschko.thomas@gmail.com
> >>> > > >:
> >>> > >
> >>> > > > In must not work without the interceptorbinding. Do you mean that
> >>> it
> >>> > does
> >>> > > > work without?
> >>> > > >
> >>> > > >
> >>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> >>> > > >
> >>> > > >> can you update your test to remove @InterceptorBinding? and
> check
> >>> if
> >>> > it
> >>> > > >> works?
> >>> > > >>
> >>> > > >>  javax.cache.annotation.CacheResult is standard so I don't want
> >>> to
> >>> > > extend
> >>> > > >> it to have the @InterceptorBinding.....if this is really the
> >>> problem.
> >>> > > >>
> >>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
> >>> luisalves00@gmail.com>
> >>> > > >> wrote:
> >>> > > >>
> >>> > > >> > @Retention(RUNTIME)
> >>> > > >> > @Target({ TYPE, METHOD })
> >>> > > >> > // @InterceptorBinding
> >>> > > >> > public @interface CustomInterceptor
> >>> > > >> > {
> >>> > > >> > }
> >>> > > >> >
> >>> > > >> > I suspect is this @InterceptorBinding....but not 100%
> >>> sure....what
> >>> > is
> >>> > > >> the
> >>> > > >> > purpose of that?
> >>> > > >> >
> >>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> >>> luisalves00@gmail.com>
> >>> > > >> wrote:
> >>> > > >> >
> >>> > > >> >> don't you want to rewrite your tests with the @CacheResult
> >>> > > interceptor
> >>> > > >> ;)
> >>> > > >> >> ? to see if it works?
> >>> > > >> >>
> >>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> >>> > > >> >> andraschko.thomas@gmail.com> wrote:
> >>> > > >> >>
> >>> > > >> >>> No idea, debug if the interceptor is really called ;)
> >>> > > >> >>>
> >>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <
> luisalves00@gmail.com
> >>> >:
> >>> > > >> >>>
> >>> > > >> >>> > moved the @CustomInterceptor declaration of the
> interceptor
> >>> for
> >>> > > the
> >>> > > >> >>> web app
> >>> > > >> >>> > beans.xml and now it gets called....SO it should work for
> >>> the
> >>> > > cache
> >>> > > >> as
> >>> > > >> >>> > well. Any hint?
> >>> > > >> >>> >
> >>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> >>> > > luisalves00@gmail.com
> >>> > > >> >
> >>> > > >> >>> > wrote:
> >>> > > >> >>> >
> >>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of
> yours
> >>> > that
> >>> > > >> logs
> >>> > > >> >>> a
> >>> > > >> >>> > > line):
> >>> > > >> >>> > >
> >>> > > >> >>> > > @Interceptor
> >>> > > >> >>> > > @CustomInterceptor
> >>> > > >> >>> > > public class CustomInterceptorImpl implements
> Serializable
> >>> > > >> >>> > > {
> >>> > > >> >>> > >
> >>> > > >> >>> > >     private static final long serialVersionUID =
> >>> > > >> >>> 7327752605570037403L;
> >>> > > >> >>> > >
> >>> > > >> >>> > >     @Inject
> >>> > > >> >>> > >     private Logger logger;
> >>> > > >> >>> > >
> >>> > > >> >>> > >     @AroundInvoke
> >>> > > >> >>> > >     public Object interceptIt(InvocationContext
> >>> > > invocationContext)
> >>> > > >> >>> throws
> >>> > > >> >>> > > Exception
> >>> > > >> >>> > >     {
> >>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
> >>> > called");
> >>> > > >> >>> > >         return invocationContext.proceed();
> >>> > > >> >>> > >     }
> >>> > > >> >>> > > }
> >>> > > >> >>> > >
> >>> > > >> >>> > > registered on the beans.xml (for service and repo
> layers):
> >>> > > >> >>> > >
> >>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> >>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> >>> xmlns:xsi="
> >>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> >>> > > >> >>> > >     xsi:schemaLocation="http://
> java.sun.com/xml/ns/javaee
> >>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >>> > > >> >>> > >
> >>> > > >> >>> > >     <interceptors>
> >>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > > >> >>> > > CacheResultInterceptor</class>
> >>> > > >> >>> > >     ...
> >>> > > >> >>> > >         <class>eu.gls.ddtm.config.
> >>> > CustomInterceptorImpl</class>
> >>> > > >> >>> > >     </interceptors>
> >>> > > >> >>> > >
> >>> > > >> >>> > > </beans>
> >>> > > >> >>> > >
> >>> > > >> >>> > > It's called on the service layer but not on the
> >>> @Repository :(
> >>> > > >> >>> > >
> >>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> >>> > > >> >>> > >
> >>> > > >> >>> > >
> >>> > > >> >>> > >
> >>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> >>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> >>> > > >> >>> > >
> >>> > > >> >>> > >> You can try with a custom interceptor and check if it's
> >>> > > invoked?
> >>> > > >> >>> > >>
> >>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
> >>> weld-2.0.0.SP1? We
> >>> > > >> have a
> >>> > > >> >>> > >> exclusion for this in the unit test as there is
> something
> >>> > > broken,
> >>> > > >> >>> as you
> >>> > > >> >>> > >> can check in the link i posted before.
> >>> > > >> >>> > >> Otherwise, it would be great if you could provide a
> >>> unittest
> >>> > > for
> >>> > > >> the
> >>> > > >> >>> > data
> >>> > > >> >>> > >> module.
> >>> > > >> >>> > >> I don't have time to prepare it by myself.
> >>> > > >> >>> > >>
> >>> > > >> >>> > >>
> >>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> >>> luisalves00@gmail.com
> >>> > >:
> >>> > > >> >>> > >>
> >>> > > >> >>> > >> > So far no success...@CacheResult on
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >> > @ApplicationScoped
> >>> > > >> >>> > >> > @Repository
> >>> > > >> >>> > >> > public abstract class SomeRepository
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing
> wrong.
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> >>> > > >> >>> luisalves00@gmail.com>
> >>> > > >> >>> > >> > wrote:
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but
> >>> still
> >>> > > can't
> >>> > > >> >>> get the
> >>> > > >> >>> > >> > cache
> >>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> >>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> >>> > > xmlns:xsi="
> >>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> >>> > > >> >>> > >> > >     xsi:schemaLocation="http://
> >>> > java.sun.com/xml/ns/javaee
> >>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > >     <interceptors>
> >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > > >> >>> > >> > > CacheResultInterceptor</class>
> >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> >>> > > >> >>> > >> > > class>
> >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> >>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> >>> > > >> >>> > >> tor</
> >>> > > >> >>> > >> > > class>
> >>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> >>> > > >> >>> ons.cdi.CachePutInterceptor</
> >>> > > >> >>> > >> class>
> >>> > > >> >>> > >> > >     </interceptors>
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > > </beans>
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > > LA
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> >>> > > >> >>> luisalves00@gmail.com
> >>> > > >> >>> > >
> >>> > > >> >>> > >> > > wrote:
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > >> Thanks Thomas,
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >> if I understood correctly if they are on the
> >>> bean.xml
> >>> > they
> >>> > > >> >>> should
> >>> > > >> >>> > >> works
> >>> > > >> >>> > >> > >> :)...only annotated one don't work.
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
> >>> getting:
> >>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> >>> > > >> l.RepositoryDefinitionException:
> >>> > > >> >>> > >> > >> Repository creation for class class
> >>> CustomBaseRepository
> >>> > > >> >>> failed. Is
> >>> > > >> >>> > >> it
> >>> > > >> >>> > >> > >> associated with a valid Entity? I got this base
> >>> class
> >>> > for
> >>> > > >> some
> >>> > > >> >>> > >> > repositories
> >>> > > >> >>> > >> > >> for some similar behavior:
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
> >>> extends
> >>> > > >> >>> > >> DomainObject<K>, K
> >>> > > >> >>> > >> > >> extends Serializable>
> >>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> >>> > > >> >>> > >> > >> {
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >> not sure if this inheritance is supposed to work
> >>> with
> >>> > the
> >>> > > >> >>> Repos...
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas
> Andraschko
> >>> <
> >>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >>> See:
> >>> > > >> >>> > >> > >>> https://github.com/apache/delt
> >>> > > >> aspike/tree/master/deltaspike/
> >>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> >>> > > >> test/java/org/apache/deltaspik
> >>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> >>> > > >> >>> > >> > >>>
> >>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> >>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> >>> > > >> >>> > >> > >>>
> >>> > > >> >>> > >> > >>> > Interceptors in generell should be supported
> but
> >>> only
> >>> > > via
> >>> > > >> >>> custom
> >>> > > >> >>> > >> > >>> binding -
> >>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> >>> @Decorator"
> >>> > > >> >>> > >> > >>> >
> >>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> >>> > > >> >>> luisalves00@gmail.com>:
> >>> > > >> >>> > >> > >>> >
> >>> > > >> >>> > >> > >>> >> So far I found that @Repository is actually a
> >>> > > >> >>> > @PartialBeanBinding
> >>> > > >> >>> > >> > and
> >>> > > >> >>> > >> > >>> I
> >>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
> >>> > > >> >>> @Interceptors,
> >>> > > >> >>> > >> > >>> @Intercepted
> >>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our
> proxies!
> >>> > > >> "...does
> >>> > > >> >>> it
> >>> > > >> >>> > >> means
> >>> > > >> >>> > >> > >>> that
> >>> > > >> >>> > >> > >>> >> I'm
> >>> > > >> >>> > >> > >>> >> screwed ;)?
> >>> > > >> >>> > >> > >>> >>
> >>> > > >> >>> > >> > >>> >> LA
> >>> > > >> >>> > >> > >>> >>
> >>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> >>> > > >> >>> > >> luisalves00@gmail.com
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> > >>> >> wrote:
> >>> > > >> >>> > >> > >>> >>
> >>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor
> >>> is
> >>> > not
> >>> > > >> >>> working
> >>> > > >> >>> > :(
> >>> > > >> >>> > >> > can't
> >>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods
> be
> >>> > > >> >>> intercepted?
> >>> > > >> >>> > >> > >>> >> >
> >>> > > >> >>> > >> > >>> >> >
> >>> > > >> >>> > >> > >>> >> >
> >>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves
> <
> >>> > > >> >>> > >> > luisalves00@gmail.com>
> >>> > > >> >>> > >> > >>> >> wrote:
> >>> > > >> >>> > >> > >>> >> >
> >>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I
> >>> guess
> >>> > it's
> >>> > > >> like
> >>> > > >> >>> > >> > Spring's
> >>> > > >> >>> > >> > >>> >> >> repositories.
> >>> > > >> >>> > >> > >>> >> >>
> >>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís
> Alves <
> >>> > > >> >>> > >> > luisalves00@gmail.com
> >>> > > >> >>> > >> > >>> >
> >>> > > >> >>> > >> > >>> >> >> wrote:
> >>> > > >> >>> > >> > >>> >> >>
> >>> > > >> >>> > >> > >>> >> >>> Hi,
> >>> > > >> >>> > >> > >>> >> >>>
> >>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and
> seems
> >>> > that
> >>> > > >> >>> > @Dependent
> >>> > > >> >>> > >> > >>> don't run
> >>> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
> >>> > > >> "my-cache")
> >>> > > >> >>> > >> annotation
> >>> > > >> >>> > >> > >>> isn't
> >>> > > >> >>> > >> > >>> >> >>> working :(
> >>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> >>> > @Repository
> >>> > > >> >>> > >> could/should
> >>> > > >> >>> > >> > be
> >>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do
> I
> >>> have
> >>> > > to
> >>> > > >> >>> worry
> >>> > > >> >>> > >> with
> >>> > > >> >>> > >> > >>> >> anything? My
> >>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> >>> > > >> >>> > >> > >>> >> >>>
> >>> > > >> >>> > >> > >>> >> >>>     @Produces
> >>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> >>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> >>> > > >> >>> > >> > >>> >> >>>     {
> >>> > > >> >>> > >> > >>> >> >>>         return entityManager;
> >>> > > >> >>> > >> > >>> >> >>>     }
> >>> > > >> >>> > >> > >>> >> >>>
> >>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for
> each
> >>> HTTP
> >>> > > >> >>> request /
> >>> > > >> >>> > >> MDB
> >>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> >>> > > >> ="....")...am I
> >>> > > >> >>> > >> correct?
> >>> > > >> >>> > >> > >>> >> >>>
> >>> > > >> >>> > >> > >>> >> >>> regards,
> >>> > > >> >>> > >> > >>> >> >>> LA
> >>> > > >> >>> > >> > >>> >> >>>
> >>> > > >> >>> > >> > >>> >> >>
> >>> > > >> >>> > >> > >>> >> >>
> >>> > > >> >>> > >> > >>> >> >
> >>> > > >> >>> > >> > >>> >>
> >>> > > >> >>> > >> > >>> >
> >>> > > >> >>> > >> > >>> >
> >>> > > >> >>> > >> > >>>
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >>
> >>> > > >> >>> > >> > >
> >>> > > >> >>> > >> >
> >>> > > >> >>> > >>
> >>> > > >> >>> > >
> >>> > > >> >>> > >
> >>> > > >> >>> >
> >>> > > >> >>>
> >>> > > >> >>
> >>> > > >> >>
> >>> > > >> >
> >>> > > >>
> >>> > > >
> >>> > >
> >>> >
> >>>
> >>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Submitted: https://github.com/jsr107/jsr107spec/issues/401
I suppose they will tell the issue is from DS...:(


On Fri, Apr 20, 2018 at 2:36 PM, Luís Alves <lu...@gmail.com> wrote:

> I suppose it's CDI capable.
>
> https://www.jcp.org/en/jsr/detail?id=107
>
> Red Hat
> : Pete Muir   <---  is on the expert group
>
>
>  * @author Gavin King
>  * @author Pete Muir
>  * @author Antoine Sabot-Durand
>  */
>
> @Target({ TYPE, METHOD, FIELD })
> @Retention(RUNTIME)
> @Documented
> @NormalScope
> @Inherited
> public @interface ApplicationScoped {
>
> }
>
>
> what I don't understand is how DS look for the interceptors? Can you point
> me out the code?
> Isn't possible to look for all annotations even if they don't have
> @InterceptorBinding and then look for the registered interceptors?
>
>
>
>
> On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> I suppose it's CDI capable.
>>
>> https://www.jcp.org/en/jsr/detail?id=107
>>
>>
>>
>> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
>> andraschko.thomas@gmail.com> wrote:
>>
>>> Puh, i wonder why they did it without binding. CacheResult is actually
>>> exactly a binding for the interceptor.
>>> Is it CDI compatible? Never had a look at the cache API ;)
>>>
>>> Even there is a bridge or something available (
>>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would
>>> work
>>> with the limited ability to add interceptors to partial beans.
>>>
>>> I think the best solution for now is to create a own binding.
>>>
>>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>
>>> > uhm...that's not good :S
>>> >
>>> > the annotation is this one:
>>> >
>>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>>> > javax/cache/annotation/CacheResult.html
>>> >
>>> > is there a way that using that annotation we get the interceptor to
>>> work?
>>> > (I can implement the interceptor myself....as I said I cannot modify
>>> the
>>> > annotation as it is javax packge)
>>> >
>>> >
>>> >
>>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>>> > andraschko.thomas@gmail.com> wrote:
>>> >
>>> > > Just to be clear: I have no idea how internally CacheResult works
>>> but our
>>> > > partial beans only supports CDI interceptors by a binding
>>> > > (InterceptorBinding).
>>> > > Everything else, like stated in the doc (@Interceptors, @Intercepted,
>>> > > @Decorator), is not supported.
>>> > >
>>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>>> > andraschko.thomas@gmail.com
>>> > > >:
>>> > >
>>> > > > In must not work without the interceptorbinding. Do you mean that
>>> it
>>> > does
>>> > > > work without?
>>> > > >
>>> > > >
>>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>>> > > >
>>> > > >> can you update your test to remove @InterceptorBinding? and check
>>> if
>>> > it
>>> > > >> works?
>>> > > >>
>>> > > >>  javax.cache.annotation.CacheResult is standard so I don't want
>>> to
>>> > > extend
>>> > > >> it to have the @InterceptorBinding.....if this is really the
>>> problem.
>>> > > >>
>>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <
>>> luisalves00@gmail.com>
>>> > > >> wrote:
>>> > > >>
>>> > > >> > @Retention(RUNTIME)
>>> > > >> > @Target({ TYPE, METHOD })
>>> > > >> > // @InterceptorBinding
>>> > > >> > public @interface CustomInterceptor
>>> > > >> > {
>>> > > >> > }
>>> > > >> >
>>> > > >> > I suspect is this @InterceptorBinding....but not 100%
>>> sure....what
>>> > is
>>> > > >> the
>>> > > >> > purpose of that?
>>> > > >> >
>>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>>> luisalves00@gmail.com>
>>> > > >> wrote:
>>> > > >> >
>>> > > >> >> don't you want to rewrite your tests with the @CacheResult
>>> > > interceptor
>>> > > >> ;)
>>> > > >> >> ? to see if it works?
>>> > > >> >>
>>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
>>> > > >> >> andraschko.thomas@gmail.com> wrote:
>>> > > >> >>
>>> > > >> >>> No idea, debug if the interceptor is really called ;)
>>> > > >> >>>
>>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <luisalves00@gmail.com
>>> >:
>>> > > >> >>>
>>> > > >> >>> > moved the @CustomInterceptor declaration of the interceptor
>>> for
>>> > > the
>>> > > >> >>> web app
>>> > > >> >>> > beans.xml and now it gets called....SO it should work for
>>> the
>>> > > cache
>>> > > >> as
>>> > > >> >>> > well. Any hint?
>>> > > >> >>> >
>>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
>>> > > luisalves00@gmail.com
>>> > > >> >
>>> > > >> >>> > wrote:
>>> > > >> >>> >
>>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of yours
>>> > that
>>> > > >> logs
>>> > > >> >>> a
>>> > > >> >>> > > line):
>>> > > >> >>> > >
>>> > > >> >>> > > @Interceptor
>>> > > >> >>> > > @CustomInterceptor
>>> > > >> >>> > > public class CustomInterceptorImpl implements Serializable
>>> > > >> >>> > > {
>>> > > >> >>> > >
>>> > > >> >>> > >     private static final long serialVersionUID =
>>> > > >> >>> 7327752605570037403L;
>>> > > >> >>> > >
>>> > > >> >>> > >     @Inject
>>> > > >> >>> > >     private Logger logger;
>>> > > >> >>> > >
>>> > > >> >>> > >     @AroundInvoke
>>> > > >> >>> > >     public Object interceptIt(InvocationContext
>>> > > invocationContext)
>>> > > >> >>> throws
>>> > > >> >>> > > Exception
>>> > > >> >>> > >     {
>>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
>>> > called");
>>> > > >> >>> > >         return invocationContext.proceed();
>>> > > >> >>> > >     }
>>> > > >> >>> > > }
>>> > > >> >>> > >
>>> > > >> >>> > > registered on the beans.xml (for service and repo layers):
>>> > > >> >>> > >
>>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>> xmlns:xsi="
>>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>>> > > >> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > > >> >>> > >
>>> > > >> >>> > >     <interceptors>
>>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > >> >>> > > CacheResultInterceptor</class>
>>> > > >> >>> > >     ...
>>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>>> > CustomInterceptorImpl</class>
>>> > > >> >>> > >     </interceptors>
>>> > > >> >>> > >
>>> > > >> >>> > > </beans>
>>> > > >> >>> > >
>>> > > >> >>> > > It's called on the service layer but not on the
>>> @Repository :(
>>> > > >> >>> > >
>>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>> > > >> >>> > >
>>> > > >> >>> > >
>>> > > >> >>> > >
>>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>>> > > >> >>> > >
>>> > > >> >>> > >> You can try with a custom interceptor and check if it's
>>> > > invoked?
>>> > > >> >>> > >>
>>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>>> weld-2.0.0.SP1? We
>>> > > >> have a
>>> > > >> >>> > >> exclusion for this in the unit test as there is something
>>> > > broken,
>>> > > >> >>> as you
>>> > > >> >>> > >> can check in the link i posted before.
>>> > > >> >>> > >> Otherwise, it would be great if you could provide a
>>> unittest
>>> > > for
>>> > > >> the
>>> > > >> >>> > data
>>> > > >> >>> > >> module.
>>> > > >> >>> > >> I don't have time to prepare it by myself.
>>> > > >> >>> > >>
>>> > > >> >>> > >>
>>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>>> luisalves00@gmail.com
>>> > >:
>>> > > >> >>> > >>
>>> > > >> >>> > >> > So far no success...@CacheResult on
>>> > > >> >>> > >> >
>>> > > >> >>> > >> > @ApplicationScoped
>>> > > >> >>> > >> > @Repository
>>> > > >> >>> > >> > public abstract class SomeRepository
>>> > > >> >>> > >> >
>>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
>>> > > >> >>> > >> >
>>> > > >> >>> > >> >
>>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>>> > > >> >>> luisalves00@gmail.com>
>>> > > >> >>> > >> > wrote:
>>> > > >> >>> > >> >
>>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but
>>> still
>>> > > can't
>>> > > >> >>> get the
>>> > > >> >>> > >> > cache
>>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>>> > > xmlns:xsi="
>>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>>> > java.sun.com/xml/ns/javaee
>>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > >     <interceptors>
>>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > >> >>> > >> > > CacheResultInterceptor</class>
>>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>>> > > >> >>> > >> > > class>
>>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>>> > > >> >>> > >> tor</
>>> > > >> >>> > >> > > class>
>>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>>> > > >> >>> ons.cdi.CachePutInterceptor</
>>> > > >> >>> > >> class>
>>> > > >> >>> > >> > >     </interceptors>
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > > </beans>
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > > LA
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>>> > > >> >>> luisalves00@gmail.com
>>> > > >> >>> > >
>>> > > >> >>> > >> > > wrote:
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > >> Thanks Thomas,
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >> if I understood correctly if they are on the
>>> bean.xml
>>> > they
>>> > > >> >>> should
>>> > > >> >>> > >> works
>>> > > >> >>> > >> > >> :)...only annotated one don't work.
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
>>> getting:
>>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>>> > > >> l.RepositoryDefinitionException:
>>> > > >> >>> > >> > >> Repository creation for class class
>>> CustomBaseRepository
>>> > > >> >>> failed. Is
>>> > > >> >>> > >> it
>>> > > >> >>> > >> > >> associated with a valid Entity? I got this base
>>> class
>>> > for
>>> > > >> some
>>> > > >> >>> > >> > repositories
>>> > > >> >>> > >> > >> for some similar behavior:
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E
>>> extends
>>> > > >> >>> > >> DomainObject<K>, K
>>> > > >> >>> > >> > >> extends Serializable>
>>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
>>> > > >> >>> > >> > >> {
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >> not sure if this inheritance is supposed to work
>>> with
>>> > the
>>> > > >> >>> Repos...
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko
>>> <
>>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >>> See:
>>> > > >> >>> > >> > >>> https://github.com/apache/delt
>>> > > >> aspike/tree/master/deltaspike/
>>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>>> > > >> test/java/org/apache/deltaspik
>>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>>> > > >> >>> > >> > >>>
>>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>>> > > >> >>> > >> > >>>
>>> > > >> >>> > >> > >>> > Interceptors in generell should be supported but
>>> only
>>> > > via
>>> > > >> >>> custom
>>> > > >> >>> > >> > >>> binding -
>>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
>>> @Decorator"
>>> > > >> >>> > >> > >>> >
>>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
>>> > > >> >>> luisalves00@gmail.com>:
>>> > > >> >>> > >> > >>> >
>>> > > >> >>> > >> > >>> >> So far I found that @Repository is actually a
>>> > > >> >>> > @PartialBeanBinding
>>> > > >> >>> > >> > and
>>> > > >> >>> > >> > >>> I
>>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
>>> > > >> >>> @Interceptors,
>>> > > >> >>> > >> > >>> @Intercepted
>>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
>>> > > >> "...does
>>> > > >> >>> it
>>> > > >> >>> > >> means
>>> > > >> >>> > >> > >>> that
>>> > > >> >>> > >> > >>> >> I'm
>>> > > >> >>> > >> > >>> >> screwed ;)?
>>> > > >> >>> > >> > >>> >>
>>> > > >> >>> > >> > >>> >> LA
>>> > > >> >>> > >> > >>> >>
>>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>>> > > >> >>> > >> luisalves00@gmail.com
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> > >>> >> wrote:
>>> > > >> >>> > >> > >>> >>
>>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor
>>> is
>>> > not
>>> > > >> >>> working
>>> > > >> >>> > :(
>>> > > >> >>> > >> > can't
>>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods be
>>> > > >> >>> intercepted?
>>> > > >> >>> > >> > >>> >> >
>>> > > >> >>> > >> > >>> >> >
>>> > > >> >>> > >> > >>> >> >
>>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>>> > > >> >>> > >> > luisalves00@gmail.com>
>>> > > >> >>> > >> > >>> >> wrote:
>>> > > >> >>> > >> > >>> >> >
>>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I
>>> guess
>>> > it's
>>> > > >> like
>>> > > >> >>> > >> > Spring's
>>> > > >> >>> > >> > >>> >> >> repositories.
>>> > > >> >>> > >> > >>> >> >>
>>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>>> > > >> >>> > >> > luisalves00@gmail.com
>>> > > >> >>> > >> > >>> >
>>> > > >> >>> > >> > >>> >> >> wrote:
>>> > > >> >>> > >> > >>> >> >>
>>> > > >> >>> > >> > >>> >> >>> Hi,
>>> > > >> >>> > >> > >>> >> >>>
>>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems
>>> > that
>>> > > >> >>> > @Dependent
>>> > > >> >>> > >> > >>> don't run
>>> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
>>> > > >> "my-cache")
>>> > > >> >>> > >> annotation
>>> > > >> >>> > >> > >>> isn't
>>> > > >> >>> > >> > >>> >> >>> working :(
>>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
>>> > @Repository
>>> > > >> >>> > >> could/should
>>> > > >> >>> > >> > be
>>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I
>>> have
>>> > > to
>>> > > >> >>> worry
>>> > > >> >>> > >> with
>>> > > >> >>> > >> > >>> >> anything? My
>>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
>>> > > >> >>> > >> > >>> >> >>>
>>> > > >> >>> > >> > >>> >> >>>     @Produces
>>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
>>> > > >> >>> > >> > >>> >> >>>     {
>>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>>> > > >> >>> > >> > >>> >> >>>     }
>>> > > >> >>> > >> > >>> >> >>>
>>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each
>>> HTTP
>>> > > >> >>> request /
>>> > > >> >>> > >> MDB
>>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
>>> > > >> ="....")...am I
>>> > > >> >>> > >> correct?
>>> > > >> >>> > >> > >>> >> >>>
>>> > > >> >>> > >> > >>> >> >>> regards,
>>> > > >> >>> > >> > >>> >> >>> LA
>>> > > >> >>> > >> > >>> >> >>>
>>> > > >> >>> > >> > >>> >> >>
>>> > > >> >>> > >> > >>> >> >>
>>> > > >> >>> > >> > >>> >> >
>>> > > >> >>> > >> > >>> >>
>>> > > >> >>> > >> > >>> >
>>> > > >> >>> > >> > >>> >
>>> > > >> >>> > >> > >>>
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >>
>>> > > >> >>> > >> > >
>>> > > >> >>> > >> >
>>> > > >> >>> > >>
>>> > > >> >>> > >
>>> > > >> >>> > >
>>> > > >> >>> >
>>> > > >> >>>
>>> > > >> >>
>>> > > >> >>
>>> > > >> >
>>> > > >>
>>> > > >
>>> > >
>>> >
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
 I suppose it's CDI capable.

https://www.jcp.org/en/jsr/detail?id=107

Red Hat
: Pete Muir   <---  is on the expert group


 * @author Gavin King
 * @author Pete Muir
 * @author Antoine Sabot-Durand
 */

@Target({ TYPE, METHOD, FIELD })
@Retention(RUNTIME)
@Documented
@NormalScope
@Inherited
public @interface ApplicationScoped {

}


what I don't understand is how DS look for the interceptors? Can you point
me out the code?
Isn't possible to look for all annotations even if they don't have
@InterceptorBinding and then look for the registered interceptors?




On Fri, Apr 20, 2018 at 2:33 PM, Luís Alves <lu...@gmail.com> wrote:

> I suppose it's CDI capable.
>
> https://www.jcp.org/en/jsr/detail?id=107
>
>
>
> On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> Puh, i wonder why they did it without binding. CacheResult is actually
>> exactly a binding for the interceptor.
>> Is it CDI compatible? Never had a look at the cache API ;)
>>
>> Even there is a bridge or something available (
>> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would work
>> with the limited ability to add interceptors to partial beans.
>>
>> I think the best solution for now is to create a own binding.
>>
>> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>
>> > uhm...that's not good :S
>> >
>> > the annotation is this one:
>> >
>> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
>> > javax/cache/annotation/CacheResult.html
>> >
>> > is there a way that using that annotation we get the interceptor to
>> work?
>> > (I can implement the interceptor myself....as I said I cannot modify the
>> > annotation as it is javax packge)
>> >
>> >
>> >
>> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
>> > andraschko.thomas@gmail.com> wrote:
>> >
>> > > Just to be clear: I have no idea how internally CacheResult works but
>> our
>> > > partial beans only supports CDI interceptors by a binding
>> > > (InterceptorBinding).
>> > > Everything else, like stated in the doc (@Interceptors, @Intercepted,
>> > > @Decorator), is not supported.
>> > >
>> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
>> > andraschko.thomas@gmail.com
>> > > >:
>> > >
>> > > > In must not work without the interceptorbinding. Do you mean that it
>> > does
>> > > > work without?
>> > > >
>> > > >
>> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
>> > > >
>> > > >> can you update your test to remove @InterceptorBinding? and check
>> if
>> > it
>> > > >> works?
>> > > >>
>> > > >>  javax.cache.annotation.CacheResult is standard so I don't want to
>> > > extend
>> > > >> it to have the @InterceptorBinding.....if this is really the
>> problem.
>> > > >>
>> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <luisalves00@gmail.com
>> >
>> > > >> wrote:
>> > > >>
>> > > >> > @Retention(RUNTIME)
>> > > >> > @Target({ TYPE, METHOD })
>> > > >> > // @InterceptorBinding
>> > > >> > public @interface CustomInterceptor
>> > > >> > {
>> > > >> > }
>> > > >> >
>> > > >> > I suspect is this @InterceptorBinding....but not 100%
>> sure....what
>> > is
>> > > >> the
>> > > >> > purpose of that?
>> > > >> >
>> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
>> luisalves00@gmail.com>
>> > > >> wrote:
>> > > >> >
>> > > >> >> don't you want to rewrite your tests with the @CacheResult
>> > > interceptor
>> > > >> ;)
>> > > >> >> ? to see if it works?
>> > > >> >>
>> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
>> > > >> >> andraschko.thomas@gmail.com> wrote:
>> > > >> >>
>> > > >> >>> No idea, debug if the interceptor is really called ;)
>> > > >> >>>
>> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > > >> >>>
>> > > >> >>> > moved the @CustomInterceptor declaration of the interceptor
>> for
>> > > the
>> > > >> >>> web app
>> > > >> >>> > beans.xml and now it gets called....SO it should work for the
>> > > cache
>> > > >> as
>> > > >> >>> > well. Any hint?
>> > > >> >>> >
>> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
>> > > luisalves00@gmail.com
>> > > >> >
>> > > >> >>> > wrote:
>> > > >> >>> >
>> > > >> >>> > > So I've created a custom one (in fact is a "copy" of yours
>> > that
>> > > >> logs
>> > > >> >>> a
>> > > >> >>> > > line):
>> > > >> >>> > >
>> > > >> >>> > > @Interceptor
>> > > >> >>> > > @CustomInterceptor
>> > > >> >>> > > public class CustomInterceptorImpl implements Serializable
>> > > >> >>> > > {
>> > > >> >>> > >
>> > > >> >>> > >     private static final long serialVersionUID =
>> > > >> >>> 7327752605570037403L;
>> > > >> >>> > >
>> > > >> >>> > >     @Inject
>> > > >> >>> > >     private Logger logger;
>> > > >> >>> > >
>> > > >> >>> > >     @AroundInvoke
>> > > >> >>> > >     public Object interceptIt(InvocationContext
>> > > invocationContext)
>> > > >> >>> throws
>> > > >> >>> > > Exception
>> > > >> >>> > >     {
>> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
>> > called");
>> > > >> >>> > >         return invocationContext.proceed();
>> > > >> >>> > >     }
>> > > >> >>> > > }
>> > > >> >>> > >
>> > > >> >>> > > registered on the beans.xml (for service and repo layers):
>> > > >> >>> > >
>> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>> xmlns:xsi="
>> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>> > > >> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > > >> >>> > >
>> > > >> >>> > >     <interceptors>
>> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
>> > > >> >>> > > CacheResultInterceptor</class>
>> > > >> >>> > >     ...
>> > > >> >>> > >         <class>eu.gls.ddtm.config.
>> > CustomInterceptorImpl</class>
>> > > >> >>> > >     </interceptors>
>> > > >> >>> > >
>> > > >> >>> > > </beans>
>> > > >> >>> > >
>> > > >> >>> > > It's called on the service layer but not on the
>> @Repository :(
>> > > >> >>> > >
>> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>> > > >> >>> > >
>> > > >> >>> > >
>> > > >> >>> > >
>> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
>> > > >> >>> > >
>> > > >> >>> > >> You can try with a custom interceptor and check if it's
>> > > invoked?
>> > > >> >>> > >>
>> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or
>> weld-2.0.0.SP1? We
>> > > >> have a
>> > > >> >>> > >> exclusion for this in the unit test as there is something
>> > > broken,
>> > > >> >>> as you
>> > > >> >>> > >> can check in the link i posted before.
>> > > >> >>> > >> Otherwise, it would be great if you could provide a
>> unittest
>> > > for
>> > > >> the
>> > > >> >>> > data
>> > > >> >>> > >> module.
>> > > >> >>> > >> I don't have time to prepare it by myself.
>> > > >> >>> > >>
>> > > >> >>> > >>
>> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
>> luisalves00@gmail.com
>> > >:
>> > > >> >>> > >>
>> > > >> >>> > >> > So far no success...@CacheResult on
>> > > >> >>> > >> >
>> > > >> >>> > >> > @ApplicationScoped
>> > > >> >>> > >> > @Repository
>> > > >> >>> > >> > public abstract class SomeRepository
>> > > >> >>> > >> >
>> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
>> > > >> >>> > >> >
>> > > >> >>> > >> >
>> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>> > > >> >>> luisalves00@gmail.com>
>> > > >> >>> > >> > wrote:
>> > > >> >>> > >> >
>> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but still
>> > > can't
>> > > >> >>> get the
>> > > >> >>> > >> > cache
>> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
>> > > >> >>> > >> > >
>> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
>> > > xmlns:xsi="
>> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>> > > >> >>> > >> > >     xsi:schemaLocation="http://
>> > java.sun.com/xml/ns/javaee
>> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > > >> >>> > >> > >
>> > > >> >>> > >> > >     <interceptors>
>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > > >> >>> > >> > > CacheResultInterceptor</class>
>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > > >> >>> > >> > CacheRemoveEntryInterceptor</
>> > > >> >>> > >> > > class>
>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > > >> >>> ons.cdi.CacheRemoveAllIntercep
>> > > >> >>> > >> tor</
>> > > >> >>> > >> > > class>
>> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
>> > > >> >>> ons.cdi.CachePutInterceptor</
>> > > >> >>> > >> class>
>> > > >> >>> > >> > >     </interceptors>
>> > > >> >>> > >> > >
>> > > >> >>> > >> > > </beans>
>> > > >> >>> > >> > >
>> > > >> >>> > >> > >
>> > > >> >>> > >> > > LA
>> > > >> >>> > >> > >
>> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>> > > >> >>> luisalves00@gmail.com
>> > > >> >>> > >
>> > > >> >>> > >> > > wrote:
>> > > >> >>> > >> > >
>> > > >> >>> > >> > >> Thanks Thomas,
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >> if I understood correctly if they are on the bean.xml
>> > they
>> > > >> >>> should
>> > > >> >>> > >> works
>> > > >> >>> > >> > >> :)...only annotated one don't work.
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before)
>> getting:
>> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
>> > > >> l.RepositoryDefinitionException:
>> > > >> >>> > >> > >> Repository creation for class class
>> CustomBaseRepository
>> > > >> >>> failed. Is
>> > > >> >>> > >> it
>> > > >> >>> > >> > >> associated with a valid Entity? I got this base class
>> > for
>> > > >> some
>> > > >> >>> > >> > repositories
>> > > >> >>> > >> > >> for some similar behavior:
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E extends
>> > > >> >>> > >> DomainObject<K>, K
>> > > >> >>> > >> > >> extends Serializable>
>> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
>> > > >> >>> > >> > >> {
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >> not sure if this inheritance is supposed to work with
>> > the
>> > > >> >>> Repos...
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >>> See:
>> > > >> >>> > >> > >>> https://github.com/apache/delt
>> > > >> aspike/tree/master/deltaspike/
>> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
>> > > >> test/java/org/apache/deltaspik
>> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
>> > > >> >>> > >> > >>>
>> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
>> > > >> >>> > >> > >>>
>> > > >> >>> > >> > >>> > Interceptors in generell should be supported but
>> only
>> > > via
>> > > >> >>> custom
>> > > >> >>> > >> > >>> binding -
>> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
>> @Decorator"
>> > > >> >>> > >> > >>> >
>> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
>> > > >> >>> luisalves00@gmail.com>:
>> > > >> >>> > >> > >>> >
>> > > >> >>> > >> > >>> >> So far I found that @Repository is actually a
>> > > >> >>> > @PartialBeanBinding
>> > > >> >>> > >> > and
>> > > >> >>> > >> > >>> I
>> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
>> > > >> >>> @Interceptors,
>> > > >> >>> > >> > >>> @Intercepted
>> > > >> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
>> > > >> "...does
>> > > >> >>> it
>> > > >> >>> > >> means
>> > > >> >>> > >> > >>> that
>> > > >> >>> > >> > >>> >> I'm
>> > > >> >>> > >> > >>> >> screwed ;)?
>> > > >> >>> > >> > >>> >>
>> > > >> >>> > >> > >>> >> LA
>> > > >> >>> > >> > >>> >>
>> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>> > > >> >>> > >> luisalves00@gmail.com
>> > > >> >>> > >> > >
>> > > >> >>> > >> > >>> >> wrote:
>> > > >> >>> > >> > >>> >>
>> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is
>> > not
>> > > >> >>> working
>> > > >> >>> > :(
>> > > >> >>> > >> > can't
>> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods be
>> > > >> >>> intercepted?
>> > > >> >>> > >> > >>> >> >
>> > > >> >>> > >> > >>> >> >
>> > > >> >>> > >> > >>> >> >
>> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>> > > >> >>> > >> > luisalves00@gmail.com>
>> > > >> >>> > >> > >>> >> wrote:
>> > > >> >>> > >> > >>> >> >
>> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess
>> > it's
>> > > >> like
>> > > >> >>> > >> > Spring's
>> > > >> >>> > >> > >>> >> >> repositories.
>> > > >> >>> > >> > >>> >> >>
>> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>> > > >> >>> > >> > luisalves00@gmail.com
>> > > >> >>> > >> > >>> >
>> > > >> >>> > >> > >>> >> >> wrote:
>> > > >> >>> > >> > >>> >> >>
>> > > >> >>> > >> > >>> >> >>> Hi,
>> > > >> >>> > >> > >>> >> >>>
>> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems
>> > that
>> > > >> >>> > @Dependent
>> > > >> >>> > >> > >>> don't run
>> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
>> > > >> "my-cache")
>> > > >> >>> > >> annotation
>> > > >> >>> > >> > >>> isn't
>> > > >> >>> > >> > >>> >> >>> working :(
>> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
>> > @Repository
>> > > >> >>> > >> could/should
>> > > >> >>> > >> > be
>> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I
>> have
>> > > to
>> > > >> >>> worry
>> > > >> >>> > >> with
>> > > >> >>> > >> > >>> >> anything? My
>> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
>> > > >> >>> > >> > >>> >> >>>
>> > > >> >>> > >> > >>> >> >>>     @Produces
>> > > >> >>> > >> > >>> >> >>>     @RequestScoped
>> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
>> > > >> >>> > >> > >>> >> >>>     {
>> > > >> >>> > >> > >>> >> >>>         return entityManager;
>> > > >> >>> > >> > >>> >> >>>     }
>> > > >> >>> > >> > >>> >> >>>
>> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each
>> HTTP
>> > > >> >>> request /
>> > > >> >>> > >> MDB
>> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
>> > > >> ="....")...am I
>> > > >> >>> > >> correct?
>> > > >> >>> > >> > >>> >> >>>
>> > > >> >>> > >> > >>> >> >>> regards,
>> > > >> >>> > >> > >>> >> >>> LA
>> > > >> >>> > >> > >>> >> >>>
>> > > >> >>> > >> > >>> >> >>
>> > > >> >>> > >> > >>> >> >>
>> > > >> >>> > >> > >>> >> >
>> > > >> >>> > >> > >>> >>
>> > > >> >>> > >> > >>> >
>> > > >> >>> > >> > >>> >
>> > > >> >>> > >> > >>>
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >>
>> > > >> >>> > >> > >
>> > > >> >>> > >> >
>> > > >> >>> > >>
>> > > >> >>> > >
>> > > >> >>> > >
>> > > >> >>> >
>> > > >> >>>
>> > > >> >>
>> > > >> >>
>> > > >> >
>> > > >>
>> > > >
>> > >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
I suppose it's CDI capable.

https://www.jcp.org/en/jsr/detail?id=107



On Fri, Apr 20, 2018 at 2:24 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> Puh, i wonder why they did it without binding. CacheResult is actually
> exactly a binding for the interceptor.
> Is it CDI compatible? Never had a look at the cache API ;)
>
> Even there is a bridge or something available (
> https://github.com/tomitribe/jcache-cdi), i'm not sure if this would work
> with the limited ability to add interceptors to partial beans.
>
> I think the best solution for now is to create a own binding.
>
> 2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > uhm...that's not good :S
> >
> > the annotation is this one:
> >
> > https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> > javax/cache/annotation/CacheResult.html
> >
> > is there a way that using that annotation we get the interceptor to work?
> > (I can implement the interceptor myself....as I said I cannot modify the
> > annotation as it is javax packge)
> >
> >
> >
> > On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> > andraschko.thomas@gmail.com> wrote:
> >
> > > Just to be clear: I have no idea how internally CacheResult works but
> our
> > > partial beans only supports CDI interceptors by a binding
> > > (InterceptorBinding).
> > > Everything else, like stated in the doc (@Interceptors, @Intercepted,
> > > @Decorator), is not supported.
> > >
> > > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> > andraschko.thomas@gmail.com
> > > >:
> > >
> > > > In must not work without the interceptorbinding. Do you mean that it
> > does
> > > > work without?
> > > >
> > > >
> > > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > > >
> > > >> can you update your test to remove @InterceptorBinding? and check if
> > it
> > > >> works?
> > > >>
> > > >>  javax.cache.annotation.CacheResult is standard so I don't want to
> > > extend
> > > >> it to have the @InterceptorBinding.....if this is really the
> problem.
> > > >>
> > > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com>
> > > >> wrote:
> > > >>
> > > >> > @Retention(RUNTIME)
> > > >> > @Target({ TYPE, METHOD })
> > > >> > // @InterceptorBinding
> > > >> > public @interface CustomInterceptor
> > > >> > {
> > > >> > }
> > > >> >
> > > >> > I suspect is this @InterceptorBinding....but not 100% sure....what
> > is
> > > >> the
> > > >> > purpose of that?
> > > >> >
> > > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <
> luisalves00@gmail.com>
> > > >> wrote:
> > > >> >
> > > >> >> don't you want to rewrite your tests with the @CacheResult
> > > interceptor
> > > >> ;)
> > > >> >> ? to see if it works?
> > > >> >>
> > > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > > >> >> andraschko.thomas@gmail.com> wrote:
> > > >> >>
> > > >> >>> No idea, debug if the interceptor is really called ;)
> > > >> >>>
> > > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > >> >>>
> > > >> >>> > moved the @CustomInterceptor declaration of the interceptor
> for
> > > the
> > > >> >>> web app
> > > >> >>> > beans.xml and now it gets called....SO it should work for the
> > > cache
> > > >> as
> > > >> >>> > well. Any hint?
> > > >> >>> >
> > > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > > luisalves00@gmail.com
> > > >> >
> > > >> >>> > wrote:
> > > >> >>> >
> > > >> >>> > > So I've created a custom one (in fact is a "copy" of yours
> > that
> > > >> logs
> > > >> >>> a
> > > >> >>> > > line):
> > > >> >>> > >
> > > >> >>> > > @Interceptor
> > > >> >>> > > @CustomInterceptor
> > > >> >>> > > public class CustomInterceptorImpl implements Serializable
> > > >> >>> > > {
> > > >> >>> > >
> > > >> >>> > >     private static final long serialVersionUID =
> > > >> >>> 7327752605570037403L;
> > > >> >>> > >
> > > >> >>> > >     @Inject
> > > >> >>> > >     private Logger logger;
> > > >> >>> > >
> > > >> >>> > >     @AroundInvoke
> > > >> >>> > >     public Object interceptIt(InvocationContext
> > > invocationContext)
> > > >> >>> throws
> > > >> >>> > > Exception
> > > >> >>> > >     {
> > > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
> > called");
> > > >> >>> > >         return invocationContext.proceed();
> > > >> >>> > >     }
> > > >> >>> > > }
> > > >> >>> > >
> > > >> >>> > > registered on the beans.xml (for service and repo layers):
> > > >> >>> > >
> > > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="
> > > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > > >> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >> >>> > >
> > > >> >>> > >     <interceptors>
> > > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >> >>> > > CacheResultInterceptor</class>
> > > >> >>> > >     ...
> > > >> >>> > >         <class>eu.gls.ddtm.config.
> > CustomInterceptorImpl</class>
> > > >> >>> > >     </interceptors>
> > > >> >>> > >
> > > >> >>> > > </beans>
> > > >> >>> > >
> > > >> >>> > > It's called on the service layer but not on the @Repository
> :(
> > > >> >>> > >
> > > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > > >> >>> > >
> > > >> >>> > >
> > > >> >>> > >
> > > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > > >> >>> > >
> > > >> >>> > >> You can try with a custom interceptor and check if it's
> > > invoked?
> > > >> >>> > >>
> > > >> >>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1?
> We
> > > >> have a
> > > >> >>> > >> exclusion for this in the unit test as there is something
> > > broken,
> > > >> >>> as you
> > > >> >>> > >> can check in the link i posted before.
> > > >> >>> > >> Otherwise, it would be great if you could provide a
> unittest
> > > for
> > > >> the
> > > >> >>> > data
> > > >> >>> > >> module.
> > > >> >>> > >> I don't have time to prepare it by myself.
> > > >> >>> > >>
> > > >> >>> > >>
> > > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <
> luisalves00@gmail.com
> > >:
> > > >> >>> > >>
> > > >> >>> > >> > So far no success...@CacheResult on
> > > >> >>> > >> >
> > > >> >>> > >> > @ApplicationScoped
> > > >> >>> > >> > @Repository
> > > >> >>> > >> > public abstract class SomeRepository
> > > >> >>> > >> >
> > > >> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
> > > >> >>> > >> >
> > > >> >>> > >> >
> > > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > > >> >>> luisalves00@gmail.com>
> > > >> >>> > >> > wrote:
> > > >> >>> > >> >
> > > >> >>> > >> > > I ditched the CustomBaseRepository for now...but still
> > > can't
> > > >> >>> get the
> > > >> >>> > >> > cache
> > > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > > >> >>> > >> > >
> > > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > > xmlns:xsi="
> > > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > > >> >>> > >> > >     xsi:schemaLocation="http://
> > java.sun.com/xml/ns/javaee
> > > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >> >>> > >> > >
> > > >> >>> > >> > >     <interceptors>
> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >> >>> > >> > > CacheResultInterceptor</class>
> > > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > > >> >>> > >> > CacheRemoveEntryInterceptor</
> > > >> >>> > >> > > class>
> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > >> >>> ons.cdi.CacheRemoveAllIntercep
> > > >> >>> > >> tor</
> > > >> >>> > >> > > class>
> > > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > > >> >>> ons.cdi.CachePutInterceptor</
> > > >> >>> > >> class>
> > > >> >>> > >> > >     </interceptors>
> > > >> >>> > >> > >
> > > >> >>> > >> > > </beans>
> > > >> >>> > >> > >
> > > >> >>> > >> > >
> > > >> >>> > >> > > LA
> > > >> >>> > >> > >
> > > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> > > >> >>> luisalves00@gmail.com
> > > >> >>> > >
> > > >> >>> > >> > > wrote:
> > > >> >>> > >> > >
> > > >> >>> > >> > >> Thanks Thomas,
> > > >> >>> > >> > >>
> > > >> >>> > >> > >> if I understood correctly if they are on the bean.xml
> > they
> > > >> >>> should
> > > >> >>> > >> works
> > > >> >>> > >> > >> :)...only annotated one don't work.
> > > >> >>> > >> > >>
> > > >> >>> > >> > >> I'm now (not sure why I didn't had it before) getting:
> > > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > > >> l.RepositoryDefinitionException:
> > > >> >>> > >> > >> Repository creation for class class
> CustomBaseRepository
> > > >> >>> failed. Is
> > > >> >>> > >> it
> > > >> >>> > >> > >> associated with a valid Entity? I got this base class
> > for
> > > >> some
> > > >> >>> > >> > repositories
> > > >> >>> > >> > >> for some similar behavior:
> > > >> >>> > >> > >>
> > > >> >>> > >> > >> public abstract class CustomBaseRepository <E extends
> > > >> >>> > >> DomainObject<K>, K
> > > >> >>> > >> > >> extends Serializable>
> > > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> > > >> >>> > >> > >> {
> > > >> >>> > >> > >>
> > > >> >>> > >> > >> not sure if this inheritance is supposed to work with
> > the
> > > >> >>> Repos...
> > > >> >>> > >> > >>
> > > >> >>> > >> > >>
> > > >> >>> > >> > >>
> > > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> > > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > > >> >>> > >> > >>
> > > >> >>> > >> > >>> See:
> > > >> >>> > >> > >>> https://github.com/apache/delt
> > > >> aspike/tree/master/deltaspike/
> > > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > > >> test/java/org/apache/deltaspik
> > > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > > >> >>> > >> > >>>
> > > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > > >> >>> > >> > >>>
> > > >> >>> > >> > >>> > Interceptors in generell should be supported but
> only
> > > via
> > > >> >>> custom
> > > >> >>> > >> > >>> binding -
> > > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and
> @Decorator"
> > > >> >>> > >> > >>> >
> > > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > > >> >>> luisalves00@gmail.com>:
> > > >> >>> > >> > >>> >
> > > >> >>> > >> > >>> >> So far I found that @Repository is actually a
> > > >> >>> > @PartialBeanBinding
> > > >> >>> > >> > and
> > > >> >>> > >> > >>> I
> > > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
> > > >> >>> @Interceptors,
> > > >> >>> > >> > >>> @Intercepted
> > > >> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
> > > >> "...does
> > > >> >>> it
> > > >> >>> > >> means
> > > >> >>> > >> > >>> that
> > > >> >>> > >> > >>> >> I'm
> > > >> >>> > >> > >>> >> screwed ;)?
> > > >> >>> > >> > >>> >>
> > > >> >>> > >> > >>> >> LA
> > > >> >>> > >> > >>> >>
> > > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> > > >> >>> > >> luisalves00@gmail.com
> > > >> >>> > >> > >
> > > >> >>> > >> > >>> >> wrote:
> > > >> >>> > >> > >>> >>
> > > >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is
> > not
> > > >> >>> working
> > > >> >>> > :(
> > > >> >>> > >> > can't
> > > >> >>> > >> > >>> >> > figure out why...can't @Repository methods be
> > > >> >>> intercepted?
> > > >> >>> > >> > >>> >> >
> > > >> >>> > >> > >>> >> >
> > > >> >>> > >> > >>> >> >
> > > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> > > >> >>> > >> > luisalves00@gmail.com>
> > > >> >>> > >> > >>> >> wrote:
> > > >> >>> > >> > >>> >> >
> > > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess
> > it's
> > > >> like
> > > >> >>> > >> > Spring's
> > > >> >>> > >> > >>> >> >> repositories.
> > > >> >>> > >> > >>> >> >>
> > > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> > > >> >>> > >> > luisalves00@gmail.com
> > > >> >>> > >> > >>> >
> > > >> >>> > >> > >>> >> >> wrote:
> > > >> >>> > >> > >>> >> >>
> > > >> >>> > >> > >>> >> >>> Hi,
> > > >> >>> > >> > >>> >> >>>
> > > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems
> > that
> > > >> >>> > @Dependent
> > > >> >>> > >> > >>> don't run
> > > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
> > > >> "my-cache")
> > > >> >>> > >> annotation
> > > >> >>> > >> > >>> isn't
> > > >> >>> > >> > >>> >> >>> working :(
> > > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> > @Repository
> > > >> >>> > >> could/should
> > > >> >>> > >> > be
> > > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I
> have
> > > to
> > > >> >>> worry
> > > >> >>> > >> with
> > > >> >>> > >> > >>> >> anything? My
> > > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> > > >> >>> > >> > >>> >> >>>
> > > >> >>> > >> > >>> >> >>>     @Produces
> > > >> >>> > >> > >>> >> >>>     @RequestScoped
> > > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > > >> >>> > >> > >>> >> >>>     {
> > > >> >>> > >> > >>> >> >>>         return entityManager;
> > > >> >>> > >> > >>> >> >>>     }
> > > >> >>> > >> > >>> >> >>>
> > > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each
> HTTP
> > > >> >>> request /
> > > >> >>> > >> MDB
> > > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> > > >> ="....")...am I
> > > >> >>> > >> correct?
> > > >> >>> > >> > >>> >> >>>
> > > >> >>> > >> > >>> >> >>> regards,
> > > >> >>> > >> > >>> >> >>> LA
> > > >> >>> > >> > >>> >> >>>
> > > >> >>> > >> > >>> >> >>
> > > >> >>> > >> > >>> >> >>
> > > >> >>> > >> > >>> >> >
> > > >> >>> > >> > >>> >>
> > > >> >>> > >> > >>> >
> > > >> >>> > >> > >>> >
> > > >> >>> > >> > >>>
> > > >> >>> > >> > >>
> > > >> >>> > >> > >>
> > > >> >>> > >> > >
> > > >> >>> > >> >
> > > >> >>> > >>
> > > >> >>> > >
> > > >> >>> > >
> > > >> >>> >
> > > >> >>>
> > > >> >>
> > > >> >>
> > > >> >
> > > >>
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Puh, i wonder why they did it without binding. CacheResult is actually
exactly a binding for the interceptor.
Is it CDI compatible? Never had a look at the cache API ;)

Even there is a bridge or something available (
https://github.com/tomitribe/jcache-cdi), i'm not sure if this would work
with the limited ability to add interceptors to partial beans.

I think the best solution for now is to create a own binding.

2018-04-20 14:55 GMT+02:00 Luís Alves <lu...@gmail.com>:

> uhm...that's not good :S
>
> the annotation is this one:
>
> https://static.javadoc.io/javax.cache/cache-api/1.0.0/
> javax/cache/annotation/CacheResult.html
>
> is there a way that using that annotation we get the interceptor to work?
> (I can implement the interceptor myself....as I said I cannot modify the
> annotation as it is javax packge)
>
>
>
> On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > Just to be clear: I have no idea how internally CacheResult works but our
> > partial beans only supports CDI interceptors by a binding
> > (InterceptorBinding).
> > Everything else, like stated in the doc (@Interceptors, @Intercepted,
> > @Decorator), is not supported.
> >
> > 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <
> andraschko.thomas@gmail.com
> > >:
> >
> > > In must not work without the interceptorbinding. Do you mean that it
> does
> > > work without?
> > >
> > >
> > > Am Freitag, 20. April 2018 schrieb Luís Alves :
> > >
> > >> can you update your test to remove @InterceptorBinding? and check if
> it
> > >> works?
> > >>
> > >>  javax.cache.annotation.CacheResult is standard so I don't want to
> > extend
> > >> it to have the @InterceptorBinding.....if this is really the problem.
> > >>
> > >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com>
> > >> wrote:
> > >>
> > >> > @Retention(RUNTIME)
> > >> > @Target({ TYPE, METHOD })
> > >> > // @InterceptorBinding
> > >> > public @interface CustomInterceptor
> > >> > {
> > >> > }
> > >> >
> > >> > I suspect is this @InterceptorBinding....but not 100% sure....what
> is
> > >> the
> > >> > purpose of that?
> > >> >
> > >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com>
> > >> wrote:
> > >> >
> > >> >> don't you want to rewrite your tests with the @CacheResult
> > interceptor
> > >> ;)
> > >> >> ? to see if it works?
> > >> >>
> > >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> > >> >> andraschko.thomas@gmail.com> wrote:
> > >> >>
> > >> >>> No idea, debug if the interceptor is really called ;)
> > >> >>>
> > >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >> >>>
> > >> >>> > moved the @CustomInterceptor declaration of the interceptor for
> > the
> > >> >>> web app
> > >> >>> > beans.xml and now it gets called....SO it should work for the
> > cache
> > >> as
> > >> >>> > well. Any hint?
> > >> >>> >
> > >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> > luisalves00@gmail.com
> > >> >
> > >> >>> > wrote:
> > >> >>> >
> > >> >>> > > So I've created a custom one (in fact is a "copy" of yours
> that
> > >> logs
> > >> >>> a
> > >> >>> > > line):
> > >> >>> > >
> > >> >>> > > @Interceptor
> > >> >>> > > @CustomInterceptor
> > >> >>> > > public class CustomInterceptorImpl implements Serializable
> > >> >>> > > {
> > >> >>> > >
> > >> >>> > >     private static final long serialVersionUID =
> > >> >>> 7327752605570037403L;
> > >> >>> > >
> > >> >>> > >     @Inject
> > >> >>> > >     private Logger logger;
> > >> >>> > >
> > >> >>> > >     @AroundInvoke
> > >> >>> > >     public Object interceptIt(InvocationContext
> > invocationContext)
> > >> >>> throws
> > >> >>> > > Exception
> > >> >>> > >     {
> > >> >>> > >         logger.info("yay :) CustomInterceptorImpl was
> called");
> > >> >>> > >         return invocationContext.proceed();
> > >> >>> > >     }
> > >> >>> > > }
> > >> >>> > >
> > >> >>> > > registered on the beans.xml (for service and repo layers):
> > >> >>> > >
> > >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> > >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> > >> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >> >>> > >
> > >> >>> > >     <interceptors>
> > >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> > >> >>> > > CacheResultInterceptor</class>
> > >> >>> > >     ...
> > >> >>> > >         <class>eu.gls.ddtm.config.
> CustomInterceptorImpl</class>
> > >> >>> > >     </interceptors>
> > >> >>> > >
> > >> >>> > > </beans>
> > >> >>> > >
> > >> >>> > > It's called on the service layer but not on the @Repository :(
> > >> >>> > >
> > >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > >> >>> > >
> > >> >>> > >
> > >> >>> > >
> > >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > >> >>> > > andraschko.thomas@gmail.com> wrote:
> > >> >>> > >
> > >> >>> > >> You can try with a custom interceptor and check if it's
> > invoked?
> > >> >>> > >>
> > >> >>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We
> > >> have a
> > >> >>> > >> exclusion for this in the unit test as there is something
> > broken,
> > >> >>> as you
> > >> >>> > >> can check in the link i posted before.
> > >> >>> > >> Otherwise, it would be great if you could provide a unittest
> > for
> > >> the
> > >> >>> > data
> > >> >>> > >> module.
> > >> >>> > >> I don't have time to prepare it by myself.
> > >> >>> > >>
> > >> >>> > >>
> > >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <luisalves00@gmail.com
> >:
> > >> >>> > >>
> > >> >>> > >> > So far no success...@CacheResult on
> > >> >>> > >> >
> > >> >>> > >> > @ApplicationScoped
> > >> >>> > >> > @Repository
> > >> >>> > >> > public abstract class SomeRepository
> > >> >>> > >> >
> > >> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
> > >> >>> > >> >
> > >> >>> > >> >
> > >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> > >> >>> luisalves00@gmail.com>
> > >> >>> > >> > wrote:
> > >> >>> > >> >
> > >> >>> > >> > > I ditched the CustomBaseRepository for now...but still
> > can't
> > >> >>> get the
> > >> >>> > >> > cache
> > >> >>> > >> > > interceptor to work...here is my beans.xml:
> > >> >>> > >> > >
> > >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> > xmlns:xsi="
> > >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > >> >>> > >> > >     xsi:schemaLocation="http://
> java.sun.com/xml/ns/javaee
> > >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >> >>> > >> > >
> > >> >>> > >> > >     <interceptors>
> > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >> >>> > >> > > CacheResultInterceptor</class>
> > >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >> >>> > >> > CacheRemoveEntryInterceptor</
> > >> >>> > >> > > class>
> > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >> >>> ons.cdi.CacheRemoveAllIntercep
> > >> >>> > >> tor</
> > >> >>> > >> > > class>
> > >> >>> > >> > >         <class>org.jsr107.ri.annotati
> > >> >>> ons.cdi.CachePutInterceptor</
> > >> >>> > >> class>
> > >> >>> > >> > >     </interceptors>
> > >> >>> > >> > >
> > >> >>> > >> > > </beans>
> > >> >>> > >> > >
> > >> >>> > >> > >
> > >> >>> > >> > > LA
> > >> >>> > >> > >
> > >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> > >> >>> luisalves00@gmail.com
> > >> >>> > >
> > >> >>> > >> > > wrote:
> > >> >>> > >> > >
> > >> >>> > >> > >> Thanks Thomas,
> > >> >>> > >> > >>
> > >> >>> > >> > >> if I understood correctly if they are on the bean.xml
> they
> > >> >>> should
> > >> >>> > >> works
> > >> >>> > >> > >> :)...only annotated one don't work.
> > >> >>> > >> > >>
> > >> >>> > >> > >> I'm now (not sure why I didn't had it before) getting:
> > >> >>> > >> > >> org.apache.deltaspike.data.imp
> > >> l.RepositoryDefinitionException:
> > >> >>> > >> > >> Repository creation for class class CustomBaseRepository
> > >> >>> failed. Is
> > >> >>> > >> it
> > >> >>> > >> > >> associated with a valid Entity? I got this base class
> for
> > >> some
> > >> >>> > >> > repositories
> > >> >>> > >> > >> for some similar behavior:
> > >> >>> > >> > >>
> > >> >>> > >> > >> public abstract class CustomBaseRepository <E extends
> > >> >>> > >> DomainObject<K>, K
> > >> >>> > >> > >> extends Serializable>
> > >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> > >> >>> > >> > >> {
> > >> >>> > >> > >>
> > >> >>> > >> > >> not sure if this inheritance is supposed to work with
> the
> > >> >>> Repos...
> > >> >>> > >> > >>
> > >> >>> > >> > >>
> > >> >>> > >> > >>
> > >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> > >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> > >> >>> > >> > >>
> > >> >>> > >> > >>> See:
> > >> >>> > >> > >>> https://github.com/apache/delt
> > >> aspike/tree/master/deltaspike/
> > >> >>> > >> > >>> modules/partial-bean/impl/src/
> > >> test/java/org/apache/deltaspik
> > >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> > >> >>> > >> > >>>
> > >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> > >> >>> > >> > >>>
> > >> >>> > >> > >>> > Interceptors in generell should be supported but only
> > via
> > >> >>> custom
> > >> >>> > >> > >>> binding -
> > >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> > >> >>> > >> > >>> >
> > >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> > >> >>> luisalves00@gmail.com>:
> > >> >>> > >> > >>> >
> > >> >>> > >> > >>> >> So far I found that @Repository is actually a
> > >> >>> > @PartialBeanBinding
> > >> >>> > >> > and
> > >> >>> > >> > >>> I
> > >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
> > >> >>> @Interceptors,
> > >> >>> > >> > >>> @Intercepted
> > >> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
> > >> "...does
> > >> >>> it
> > >> >>> > >> means
> > >> >>> > >> > >>> that
> > >> >>> > >> > >>> >> I'm
> > >> >>> > >> > >>> >> screwed ;)?
> > >> >>> > >> > >>> >>
> > >> >>> > >> > >>> >> LA
> > >> >>> > >> > >>> >>
> > >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> > >> >>> > >> luisalves00@gmail.com
> > >> >>> > >> > >
> > >> >>> > >> > >>> >> wrote:
> > >> >>> > >> > >>> >>
> > >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is
> not
> > >> >>> working
> > >> >>> > :(
> > >> >>> > >> > can't
> > >> >>> > >> > >>> >> > figure out why...can't @Repository methods be
> > >> >>> intercepted?
> > >> >>> > >> > >>> >> >
> > >> >>> > >> > >>> >> >
> > >> >>> > >> > >>> >> >
> > >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> > >> >>> > >> > luisalves00@gmail.com>
> > >> >>> > >> > >>> >> wrote:
> > >> >>> > >> > >>> >> >
> > >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess
> it's
> > >> like
> > >> >>> > >> > Spring's
> > >> >>> > >> > >>> >> >> repositories.
> > >> >>> > >> > >>> >> >>
> > >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> > >> >>> > >> > luisalves00@gmail.com
> > >> >>> > >> > >>> >
> > >> >>> > >> > >>> >> >> wrote:
> > >> >>> > >> > >>> >> >>
> > >> >>> > >> > >>> >> >>> Hi,
> > >> >>> > >> > >>> >> >>>
> > >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems
> that
> > >> >>> > @Dependent
> > >> >>> > >> > >>> don't run
> > >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
> > >> "my-cache")
> > >> >>> > >> annotation
> > >> >>> > >> > >>> isn't
> > >> >>> > >> > >>> >> >>> working :(
> > >> >>> > >> > >>> >> >>> I remember that some one proposed that
> @Repository
> > >> >>> > >> could/should
> > >> >>> > >> > be
> > >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have
> > to
> > >> >>> worry
> > >> >>> > >> with
> > >> >>> > >> > >>> >> anything? My
> > >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> > >> >>> > >> > >>> >> >>>
> > >> >>> > >> > >>> >> >>>     @Produces
> > >> >>> > >> > >>> >> >>>     @RequestScoped
> > >> >>> > >> > >>> >> >>>     public EntityManager get()
> > >> >>> > >> > >>> >> >>>     {
> > >> >>> > >> > >>> >> >>>         return entityManager;
> > >> >>> > >> > >>> >> >>>     }
> > >> >>> > >> > >>> >> >>>
> > >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
> > >> >>> request /
> > >> >>> > >> MDB
> > >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> > >> ="....")...am I
> > >> >>> > >> correct?
> > >> >>> > >> > >>> >> >>>
> > >> >>> > >> > >>> >> >>> regards,
> > >> >>> > >> > >>> >> >>> LA
> > >> >>> > >> > >>> >> >>>
> > >> >>> > >> > >>> >> >>
> > >> >>> > >> > >>> >> >>
> > >> >>> > >> > >>> >> >
> > >> >>> > >> > >>> >>
> > >> >>> > >> > >>> >
> > >> >>> > >> > >>> >
> > >> >>> > >> > >>>
> > >> >>> > >> > >>
> > >> >>> > >> > >>
> > >> >>> > >> > >
> > >> >>> > >> >
> > >> >>> > >>
> > >> >>> > >
> > >> >>> > >
> > >> >>> >
> > >> >>>
> > >> >>
> > >> >>
> > >> >
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
uhm...that's not good :S

the annotation is this one:

https://static.javadoc.io/javax.cache/cache-api/1.0.0/javax/cache/annotation/CacheResult.html

is there a way that using that annotation we get the interceptor to work?
(I can implement the interceptor myself....as I said I cannot modify the
annotation as it is javax packge)



On Fri, Apr 20, 2018 at 1:41 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> Just to be clear: I have no idea how internally CacheResult works but our
> partial beans only supports CDI interceptors by a binding
> (InterceptorBinding).
> Everything else, like stated in the doc (@Interceptors, @Intercepted,
> @Decorator), is not supported.
>
> 2018-04-20 14:31 GMT+02:00 Thomas Andraschko <andraschko.thomas@gmail.com
> >:
>
> > In must not work without the interceptorbinding. Do you mean that it does
> > work without?
> >
> >
> > Am Freitag, 20. April 2018 schrieb Luís Alves :
> >
> >> can you update your test to remove @InterceptorBinding? and check if it
> >> works?
> >>
> >>  javax.cache.annotation.CacheResult is standard so I don't want to
> extend
> >> it to have the @InterceptorBinding.....if this is really the problem.
> >>
> >> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >>
> >> > @Retention(RUNTIME)
> >> > @Target({ TYPE, METHOD })
> >> > // @InterceptorBinding
> >> > public @interface CustomInterceptor
> >> > {
> >> > }
> >> >
> >> > I suspect is this @InterceptorBinding....but not 100% sure....what is
> >> the
> >> > purpose of that?
> >> >
> >> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >> >
> >> >> don't you want to rewrite your tests with the @CacheResult
> interceptor
> >> ;)
> >> >> ? to see if it works?
> >> >>
> >> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> >> >> andraschko.thomas@gmail.com> wrote:
> >> >>
> >> >>> No idea, debug if the interceptor is really called ;)
> >> >>>
> >> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >> >>>
> >> >>> > moved the @CustomInterceptor declaration of the interceptor for
> the
> >> >>> web app
> >> >>> > beans.xml and now it gets called....SO it should work for the
> cache
> >> as
> >> >>> > well. Any hint?
> >> >>> >
> >> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <
> luisalves00@gmail.com
> >> >
> >> >>> > wrote:
> >> >>> >
> >> >>> > > So I've created a custom one (in fact is a "copy" of yours that
> >> logs
> >> >>> a
> >> >>> > > line):
> >> >>> > >
> >> >>> > > @Interceptor
> >> >>> > > @CustomInterceptor
> >> >>> > > public class CustomInterceptorImpl implements Serializable
> >> >>> > > {
> >> >>> > >
> >> >>> > >     private static final long serialVersionUID =
> >> >>> 7327752605570037403L;
> >> >>> > >
> >> >>> > >     @Inject
> >> >>> > >     private Logger logger;
> >> >>> > >
> >> >>> > >     @AroundInvoke
> >> >>> > >     public Object interceptIt(InvocationContext
> invocationContext)
> >> >>> throws
> >> >>> > > Exception
> >> >>> > >     {
> >> >>> > >         logger.info("yay :) CustomInterceptorImpl was called");
> >> >>> > >         return invocationContext.proceed();
> >> >>> > >     }
> >> >>> > > }
> >> >>> > >
> >> >>> > > registered on the beans.xml (for service and repo layers):
> >> >>> > >
> >> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> >> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> >> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> >> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> >> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >> >>> > >
> >> >>> > >     <interceptors>
> >> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> >> >>> > > CacheResultInterceptor</class>
> >> >>> > >     ...
> >> >>> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
> >> >>> > >     </interceptors>
> >> >>> > >
> >> >>> > > </beans>
> >> >>> > >
> >> >>> > > It's called on the service layer but not on the @Repository :(
> >> >>> > >
> >> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> >> >>> > >
> >> >>> > >
> >> >>> > >
> >> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> >> >>> > > andraschko.thomas@gmail.com> wrote:
> >> >>> > >
> >> >>> > >> You can try with a custom interceptor and check if it's
> invoked?
> >> >>> > >>
> >> >>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We
> >> have a
> >> >>> > >> exclusion for this in the unit test as there is something
> broken,
> >> >>> as you
> >> >>> > >> can check in the link i posted before.
> >> >>> > >> Otherwise, it would be great if you could provide a unittest
> for
> >> the
> >> >>> > data
> >> >>> > >> module.
> >> >>> > >> I don't have time to prepare it by myself.
> >> >>> > >>
> >> >>> > >>
> >> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >> >>> > >>
> >> >>> > >> > So far no success...@CacheResult on
> >> >>> > >> >
> >> >>> > >> > @ApplicationScoped
> >> >>> > >> > @Repository
> >> >>> > >> > public abstract class SomeRepository
> >> >>> > >> >
> >> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
> >> >>> > >> >
> >> >>> > >> >
> >> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> >> >>> luisalves00@gmail.com>
> >> >>> > >> > wrote:
> >> >>> > >> >
> >> >>> > >> > > I ditched the CustomBaseRepository for now...but still
> can't
> >> >>> get the
> >> >>> > >> > cache
> >> >>> > >> > > interceptor to work...here is my beans.xml:
> >> >>> > >> > >
> >> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> >> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee"
> xmlns:xsi="
> >> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> >> >>> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> >> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >> >>> > >> > >
> >> >>> > >> > >     <interceptors>
> >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >> >>> > >> > > CacheResultInterceptor</class>
> >> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >> >>> > >> > CacheRemoveEntryInterceptor</
> >> >>> > >> > > class>
> >> >>> > >> > >         <class>org.jsr107.ri.annotati
> >> >>> ons.cdi.CacheRemoveAllIntercep
> >> >>> > >> tor</
> >> >>> > >> > > class>
> >> >>> > >> > >         <class>org.jsr107.ri.annotati
> >> >>> ons.cdi.CachePutInterceptor</
> >> >>> > >> class>
> >> >>> > >> > >     </interceptors>
> >> >>> > >> > >
> >> >>> > >> > > </beans>
> >> >>> > >> > >
> >> >>> > >> > >
> >> >>> > >> > > LA
> >> >>> > >> > >
> >> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> >> >>> luisalves00@gmail.com
> >> >>> > >
> >> >>> > >> > > wrote:
> >> >>> > >> > >
> >> >>> > >> > >> Thanks Thomas,
> >> >>> > >> > >>
> >> >>> > >> > >> if I understood correctly if they are on the bean.xml they
> >> >>> should
> >> >>> > >> works
> >> >>> > >> > >> :)...only annotated one don't work.
> >> >>> > >> > >>
> >> >>> > >> > >> I'm now (not sure why I didn't had it before) getting:
> >> >>> > >> > >> org.apache.deltaspike.data.imp
> >> l.RepositoryDefinitionException:
> >> >>> > >> > >> Repository creation for class class CustomBaseRepository
> >> >>> failed. Is
> >> >>> > >> it
> >> >>> > >> > >> associated with a valid Entity? I got this base class for
> >> some
> >> >>> > >> > repositories
> >> >>> > >> > >> for some similar behavior:
> >> >>> > >> > >>
> >> >>> > >> > >> public abstract class CustomBaseRepository <E extends
> >> >>> > >> DomainObject<K>, K
> >> >>> > >> > >> extends Serializable>
> >> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> >> >>> > >> > >> {
> >> >>> > >> > >>
> >> >>> > >> > >> not sure if this inheritance is supposed to work with the
> >> >>> Repos...
> >> >>> > >> > >>
> >> >>> > >> > >>
> >> >>> > >> > >>
> >> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> >> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> >> >>> > >> > >>
> >> >>> > >> > >>> See:
> >> >>> > >> > >>> https://github.com/apache/delt
> >> aspike/tree/master/deltaspike/
> >> >>> > >> > >>> modules/partial-bean/impl/src/
> >> test/java/org/apache/deltaspik
> >> >>> > >> > >>> e/test/core/api/partialbean/uc008
> >> >>> > >> > >>>
> >> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> >> >>> > >> > >>> andraschko.thomas@gmail.com>:
> >> >>> > >> > >>>
> >> >>> > >> > >>> > Interceptors in generell should be supported but only
> via
> >> >>> custom
> >> >>> > >> > >>> binding -
> >> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> >> >>> > >> > >>> >
> >> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> >> >>> luisalves00@gmail.com>:
> >> >>> > >> > >>> >
> >> >>> > >> > >>> >> So far I found that @Repository is actually a
> >> >>> > @PartialBeanBinding
> >> >>> > >> > and
> >> >>> > >> > >>> I
> >> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
> >> >>> @Interceptors,
> >> >>> > >> > >>> @Intercepted
> >> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
> >> "...does
> >> >>> it
> >> >>> > >> means
> >> >>> > >> > >>> that
> >> >>> > >> > >>> >> I'm
> >> >>> > >> > >>> >> screwed ;)?
> >> >>> > >> > >>> >>
> >> >>> > >> > >>> >> LA
> >> >>> > >> > >>> >>
> >> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> >> >>> > >> luisalves00@gmail.com
> >> >>> > >> > >
> >> >>> > >> > >>> >> wrote:
> >> >>> > >> > >>> >>
> >> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is not
> >> >>> working
> >> >>> > :(
> >> >>> > >> > can't
> >> >>> > >> > >>> >> > figure out why...can't @Repository methods be
> >> >>> intercepted?
> >> >>> > >> > >>> >> >
> >> >>> > >> > >>> >> >
> >> >>> > >> > >>> >> >
> >> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> >> >>> > >> > luisalves00@gmail.com>
> >> >>> > >> > >>> >> wrote:
> >> >>> > >> > >>> >> >
> >> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's
> >> like
> >> >>> > >> > Spring's
> >> >>> > >> > >>> >> >> repositories.
> >> >>> > >> > >>> >> >>
> >> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> >> >>> > >> > luisalves00@gmail.com
> >> >>> > >> > >>> >
> >> >>> > >> > >>> >> >> wrote:
> >> >>> > >> > >>> >> >>
> >> >>> > >> > >>> >> >>> Hi,
> >> >>> > >> > >>> >> >>>
> >> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
> >> >>> > @Dependent
> >> >>> > >> > >>> don't run
> >> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
> >> "my-cache")
> >> >>> > >> annotation
> >> >>> > >> > >>> isn't
> >> >>> > >> > >>> >> >>> working :(
> >> >>> > >> > >>> >> >>> I remember that some one proposed that @Repository
> >> >>> > >> could/should
> >> >>> > >> > be
> >> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have
> to
> >> >>> worry
> >> >>> > >> with
> >> >>> > >> > >>> >> anything? My
> >> >>> > >> > >>> >> >>> EntityManager producer is the following:
> >> >>> > >> > >>> >> >>>
> >> >>> > >> > >>> >> >>>     @Produces
> >> >>> > >> > >>> >> >>>     @RequestScoped
> >> >>> > >> > >>> >> >>>     public EntityManager get()
> >> >>> > >> > >>> >> >>>     {
> >> >>> > >> > >>> >> >>>         return entityManager;
> >> >>> > >> > >>> >> >>>     }
> >> >>> > >> > >>> >> >>>
> >> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
> >> >>> request /
> >> >>> > >> MDB
> >> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> >> ="....")...am I
> >> >>> > >> correct?
> >> >>> > >> > >>> >> >>>
> >> >>> > >> > >>> >> >>> regards,
> >> >>> > >> > >>> >> >>> LA
> >> >>> > >> > >>> >> >>>
> >> >>> > >> > >>> >> >>
> >> >>> > >> > >>> >> >>
> >> >>> > >> > >>> >> >
> >> >>> > >> > >>> >>
> >> >>> > >> > >>> >
> >> >>> > >> > >>> >
> >> >>> > >> > >>>
> >> >>> > >> > >>
> >> >>> > >> > >>
> >> >>> > >> > >
> >> >>> > >> >
> >> >>> > >>
> >> >>> > >
> >> >>> > >
> >> >>> >
> >> >>>
> >> >>
> >> >>
> >> >
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Just to be clear: I have no idea how internally CacheResult works but our
partial beans only supports CDI interceptors by a binding
(InterceptorBinding).
Everything else, like stated in the doc (@Interceptors, @Intercepted,
@Decorator), is not supported.

2018-04-20 14:31 GMT+02:00 Thomas Andraschko <an...@gmail.com>:

> In must not work without the interceptorbinding. Do you mean that it does
> work without?
>
>
> Am Freitag, 20. April 2018 schrieb Luís Alves :
>
>> can you update your test to remove @InterceptorBinding? and check if it
>> works?
>>
>>  javax.cache.annotation.CacheResult is standard so I don't want to extend
>> it to have the @InterceptorBinding.....if this is really the problem.
>>
>> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>> > @Retention(RUNTIME)
>> > @Target({ TYPE, METHOD })
>> > // @InterceptorBinding
>> > public @interface CustomInterceptor
>> > {
>> > }
>> >
>> > I suspect is this @InterceptorBinding....but not 100% sure....what is
>> the
>> > purpose of that?
>> >
>> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com>
>> wrote:
>> >
>> >> don't you want to rewrite your tests with the @CacheResult interceptor
>> ;)
>> >> ? to see if it works?
>> >>
>> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
>> >> andraschko.thomas@gmail.com> wrote:
>> >>
>> >>> No idea, debug if the interceptor is really called ;)
>> >>>
>> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> >>>
>> >>> > moved the @CustomInterceptor declaration of the interceptor for the
>> >>> web app
>> >>> > beans.xml and now it gets called....SO it should work for the cache
>> as
>> >>> > well. Any hint?
>> >>> >
>> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <luisalves00@gmail.com
>> >
>> >>> > wrote:
>> >>> >
>> >>> > > So I've created a custom one (in fact is a "copy" of yours that
>> logs
>> >>> a
>> >>> > > line):
>> >>> > >
>> >>> > > @Interceptor
>> >>> > > @CustomInterceptor
>> >>> > > public class CustomInterceptorImpl implements Serializable
>> >>> > > {
>> >>> > >
>> >>> > >     private static final long serialVersionUID =
>> >>> 7327752605570037403L;
>> >>> > >
>> >>> > >     @Inject
>> >>> > >     private Logger logger;
>> >>> > >
>> >>> > >     @AroundInvoke
>> >>> > >     public Object interceptIt(InvocationContext invocationContext)
>> >>> throws
>> >>> > > Exception
>> >>> > >     {
>> >>> > >         logger.info("yay :) CustomInterceptorImpl was called");
>> >>> > >         return invocationContext.proceed();
>> >>> > >     }
>> >>> > > }
>> >>> > >
>> >>> > > registered on the beans.xml (for service and repo layers):
>> >>> > >
>> >>> > > <?xml version="1.0" encoding="UTF-8"?>
>> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>> >>> > > http://www.w3.org/2001/XMLSchema-instance"
>> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> >>> > >
>> >>> > >     <interceptors>
>> >>> > >         <class>org.jsr107.ri.annotations.cdi.
>> >>> > > CacheResultInterceptor</class>
>> >>> > >     ...
>> >>> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
>> >>> > >     </interceptors>
>> >>> > >
>> >>> > > </beans>
>> >>> > >
>> >>> > > It's called on the service layer but not on the @Repository :(
>> >>> > >
>> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>> >>> > >
>> >>> > >
>> >>> > >
>> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>> >>> > > andraschko.thomas@gmail.com> wrote:
>> >>> > >
>> >>> > >> You can try with a custom interceptor and check if it's invoked?
>> >>> > >>
>> >>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We
>> have a
>> >>> > >> exclusion for this in the unit test as there is something broken,
>> >>> as you
>> >>> > >> can check in the link i posted before.
>> >>> > >> Otherwise, it would be great if you could provide a unittest for
>> the
>> >>> > data
>> >>> > >> module.
>> >>> > >> I don't have time to prepare it by myself.
>> >>> > >>
>> >>> > >>
>> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> >>> > >>
>> >>> > >> > So far no success...@CacheResult on
>> >>> > >> >
>> >>> > >> > @ApplicationScoped
>> >>> > >> > @Repository
>> >>> > >> > public abstract class SomeRepository
>> >>> > >> >
>> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
>> >>> > >> >
>> >>> > >> >
>> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>> >>> luisalves00@gmail.com>
>> >>> > >> > wrote:
>> >>> > >> >
>> >>> > >> > > I ditched the CustomBaseRepository for now...but still can't
>> >>> get the
>> >>> > >> > cache
>> >>> > >> > > interceptor to work...here is my beans.xml:
>> >>> > >> > >
>> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>> >>> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> >>> > >> > >
>> >>> > >> > >     <interceptors>
>> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> >>> > >> > > CacheResultInterceptor</class>
>> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> >>> > >> > CacheRemoveEntryInterceptor</
>> >>> > >> > > class>
>> >>> > >> > >         <class>org.jsr107.ri.annotati
>> >>> ons.cdi.CacheRemoveAllIntercep
>> >>> > >> tor</
>> >>> > >> > > class>
>> >>> > >> > >         <class>org.jsr107.ri.annotati
>> >>> ons.cdi.CachePutInterceptor</
>> >>> > >> class>
>> >>> > >> > >     </interceptors>
>> >>> > >> > >
>> >>> > >> > > </beans>
>> >>> > >> > >
>> >>> > >> > >
>> >>> > >> > > LA
>> >>> > >> > >
>> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>> >>> luisalves00@gmail.com
>> >>> > >
>> >>> > >> > > wrote:
>> >>> > >> > >
>> >>> > >> > >> Thanks Thomas,
>> >>> > >> > >>
>> >>> > >> > >> if I understood correctly if they are on the bean.xml they
>> >>> should
>> >>> > >> works
>> >>> > >> > >> :)...only annotated one don't work.
>> >>> > >> > >>
>> >>> > >> > >> I'm now (not sure why I didn't had it before) getting:
>> >>> > >> > >> org.apache.deltaspike.data.imp
>> l.RepositoryDefinitionException:
>> >>> > >> > >> Repository creation for class class CustomBaseRepository
>> >>> failed. Is
>> >>> > >> it
>> >>> > >> > >> associated with a valid Entity? I got this base class for
>> some
>> >>> > >> > repositories
>> >>> > >> > >> for some similar behavior:
>> >>> > >> > >>
>> >>> > >> > >> public abstract class CustomBaseRepository <E extends
>> >>> > >> DomainObject<K>, K
>> >>> > >> > >> extends Serializable>
>> >>> > >> > >>         extends AbstractEntityRepository<E, K>
>> >>> > >> > >> {
>> >>> > >> > >>
>> >>> > >> > >> not sure if this inheritance is supposed to work with the
>> >>> Repos...
>> >>> > >> > >>
>> >>> > >> > >>
>> >>> > >> > >>
>> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
>> >>> > >> > >>
>> >>> > >> > >>> See:
>> >>> > >> > >>> https://github.com/apache/delt
>> aspike/tree/master/deltaspike/
>> >>> > >> > >>> modules/partial-bean/impl/src/
>> test/java/org/apache/deltaspik
>> >>> > >> > >>> e/test/core/api/partialbean/uc008
>> >>> > >> > >>>
>> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>> >>> > >> > >>> andraschko.thomas@gmail.com>:
>> >>> > >> > >>>
>> >>> > >> > >>> > Interceptors in generell should be supported but only via
>> >>> custom
>> >>> > >> > >>> binding -
>> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
>> >>> > >> > >>> >
>> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
>> >>> luisalves00@gmail.com>:
>> >>> > >> > >>> >
>> >>> > >> > >>> >> So far I found that @Repository is actually a
>> >>> > @PartialBeanBinding
>> >>> > >> > and
>> >>> > >> > >>> I
>> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
>> >>> @Interceptors,
>> >>> > >> > >>> @Intercepted
>> >>> > >> > >>> >> and @Decorator are not supported by our proxies!
>> "...does
>> >>> it
>> >>> > >> means
>> >>> > >> > >>> that
>> >>> > >> > >>> >> I'm
>> >>> > >> > >>> >> screwed ;)?
>> >>> > >> > >>> >>
>> >>> > >> > >>> >> LA
>> >>> > >> > >>> >>
>> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>> >>> > >> luisalves00@gmail.com
>> >>> > >> > >
>> >>> > >> > >>> >> wrote:
>> >>> > >> > >>> >>
>> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is not
>> >>> working
>> >>> > :(
>> >>> > >> > can't
>> >>> > >> > >>> >> > figure out why...can't @Repository methods be
>> >>> intercepted?
>> >>> > >> > >>> >> >
>> >>> > >> > >>> >> >
>> >>> > >> > >>> >> >
>> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>> >>> > >> > luisalves00@gmail.com>
>> >>> > >> > >>> >> wrote:
>> >>> > >> > >>> >> >
>> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's
>> like
>> >>> > >> > Spring's
>> >>> > >> > >>> >> >> repositories.
>> >>> > >> > >>> >> >>
>> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>> >>> > >> > luisalves00@gmail.com
>> >>> > >> > >>> >
>> >>> > >> > >>> >> >> wrote:
>> >>> > >> > >>> >> >>
>> >>> > >> > >>> >> >>> Hi,
>> >>> > >> > >>> >> >>>
>> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
>> >>> > @Dependent
>> >>> > >> > >>> don't run
>> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName =
>> "my-cache")
>> >>> > >> annotation
>> >>> > >> > >>> isn't
>> >>> > >> > >>> >> >>> working :(
>> >>> > >> > >>> >> >>> I remember that some one proposed that @Repository
>> >>> > >> could/should
>> >>> > >> > be
>> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to
>> >>> worry
>> >>> > >> with
>> >>> > >> > >>> >> anything? My
>> >>> > >> > >>> >> >>> EntityManager producer is the following:
>> >>> > >> > >>> >> >>>
>> >>> > >> > >>> >> >>>     @Produces
>> >>> > >> > >>> >> >>>     @RequestScoped
>> >>> > >> > >>> >> >>>     public EntityManager get()
>> >>> > >> > >>> >> >>>     {
>> >>> > >> > >>> >> >>>         return entityManager;
>> >>> > >> > >>> >> >>>     }
>> >>> > >> > >>> >> >>>
>> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
>> >>> request /
>> >>> > >> MDB
>> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
>> ="....")...am I
>> >>> > >> correct?
>> >>> > >> > >>> >> >>>
>> >>> > >> > >>> >> >>> regards,
>> >>> > >> > >>> >> >>> LA
>> >>> > >> > >>> >> >>>
>> >>> > >> > >>> >> >>
>> >>> > >> > >>> >> >>
>> >>> > >> > >>> >> >
>> >>> > >> > >>> >>
>> >>> > >> > >>> >
>> >>> > >> > >>> >
>> >>> > >> > >>>
>> >>> > >> > >>
>> >>> > >> > >>
>> >>> > >> > >
>> >>> > >> >
>> >>> > >>
>> >>> > >
>> >>> > >
>> >>> >
>> >>>
>> >>
>> >>
>> >
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
In must not work without the interceptorbinding. Do you mean that it does
work without?

Am Freitag, 20. April 2018 schrieb Luís Alves :

> can you update your test to remove @InterceptorBinding? and check if it
> works?
>
>  javax.cache.annotation.CacheResult is standard so I don't want to extend
> it to have the @InterceptorBinding.....if this is really the problem.
>
> On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com> wrote:
>
> > @Retention(RUNTIME)
> > @Target({ TYPE, METHOD })
> > // @InterceptorBinding
> > public @interface CustomInterceptor
> > {
> > }
> >
> > I suspect is this @InterceptorBinding....but not 100% sure....what is the
> > purpose of that?
> >
> > On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> >> don't you want to rewrite your tests with the @CacheResult interceptor
> ;)
> >> ? to see if it works?
> >>
> >> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> >> andraschko.thomas@gmail.com> wrote:
> >>
> >>> No idea, debug if the interceptor is really called ;)
> >>>
> >>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>>
> >>> > moved the @CustomInterceptor declaration of the interceptor for the
> >>> web app
> >>> > beans.xml and now it gets called....SO it should work for the cache
> as
> >>> > well. Any hint?
> >>> >
> >>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com>
> >>> > wrote:
> >>> >
> >>> > > So I've created a custom one (in fact is a "copy" of yours that
> logs
> >>> a
> >>> > > line):
> >>> > >
> >>> > > @Interceptor
> >>> > > @CustomInterceptor
> >>> > > public class CustomInterceptorImpl implements Serializable
> >>> > > {
> >>> > >
> >>> > >     private static final long serialVersionUID =
> >>> 7327752605570037403L;
> >>> > >
> >>> > >     @Inject
> >>> > >     private Logger logger;
> >>> > >
> >>> > >     @AroundInvoke
> >>> > >     public Object interceptIt(InvocationContext invocationContext)
> >>> throws
> >>> > > Exception
> >>> > >     {
> >>> > >         logger.info("yay :) CustomInterceptorImpl was called");
> >>> > >         return invocationContext.proceed();
> >>> > >     }
> >>> > > }
> >>> > >
> >>> > > registered on the beans.xml (for service and repo layers):
> >>> > >
> >>> > > <?xml version="1.0" encoding="UTF-8"?>
> >>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> >>> > > http://www.w3.org/2001/XMLSchema-instance"
> >>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> >>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >>> > >
> >>> > >     <interceptors>
> >>> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > > CacheResultInterceptor</class>
> >>> > >     ...
> >>> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
> >>> > >     </interceptors>
> >>> > >
> >>> > > </beans>
> >>> > >
> >>> > > It's called on the service layer but not on the @Repository :(
> >>> > >
> >>> > > ...I'm using Wildfly 10 (CDI 1.x)...
> >>> > >
> >>> > >
> >>> > >
> >>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> >>> > > andraschko.thomas@gmail.com> wrote:
> >>> > >
> >>> > >> You can try with a custom interceptor and check if it's invoked?
> >>> > >>
> >>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We
> have a
> >>> > >> exclusion for this in the unit test as there is something broken,
> >>> as you
> >>> > >> can check in the link i posted before.
> >>> > >> Otherwise, it would be great if you could provide a unittest for
> the
> >>> > data
> >>> > >> module.
> >>> > >> I don't have time to prepare it by myself.
> >>> > >>
> >>> > >>
> >>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>> > >>
> >>> > >> > So far no success...@CacheResult on
> >>> > >> >
> >>> > >> > @ApplicationScoped
> >>> > >> > @Repository
> >>> > >> > public abstract class SomeRepository
> >>> > >> >
> >>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
> >>> > >> >
> >>> > >> >
> >>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
> >>> luisalves00@gmail.com>
> >>> > >> > wrote:
> >>> > >> >
> >>> > >> > > I ditched the CustomBaseRepository for now...but still can't
> >>> get the
> >>> > >> > cache
> >>> > >> > > interceptor to work...here is my beans.xml:
> >>> > >> > >
> >>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> >>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> >>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> >>> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> >>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >>> > >> > >
> >>> > >> > >     <interceptors>
> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > >> > > CacheResultInterceptor</class>
> >>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> >>> > >> > CacheRemoveEntryInterceptor</
> >>> > >> > > class>
> >>> > >> > >         <class>org.jsr107.ri.annotati
> >>> ons.cdi.CacheRemoveAllIntercep
> >>> > >> tor</
> >>> > >> > > class>
> >>> > >> > >         <class>org.jsr107.ri.annotati
> >>> ons.cdi.CachePutInterceptor</
> >>> > >> class>
> >>> > >> > >     </interceptors>
> >>> > >> > >
> >>> > >> > > </beans>
> >>> > >> > >
> >>> > >> > >
> >>> > >> > > LA
> >>> > >> > >
> >>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> >>> luisalves00@gmail.com
> >>> > >
> >>> > >> > > wrote:
> >>> > >> > >
> >>> > >> > >> Thanks Thomas,
> >>> > >> > >>
> >>> > >> > >> if I understood correctly if they are on the bean.xml they
> >>> should
> >>> > >> works
> >>> > >> > >> :)...only annotated one don't work.
> >>> > >> > >>
> >>> > >> > >> I'm now (not sure why I didn't had it before) getting:
> >>> > >> > >> org.apache.deltaspike.data.impl.
> RepositoryDefinitionException:
> >>> > >> > >> Repository creation for class class CustomBaseRepository
> >>> failed. Is
> >>> > >> it
> >>> > >> > >> associated with a valid Entity? I got this base class for
> some
> >>> > >> > repositories
> >>> > >> > >> for some similar behavior:
> >>> > >> > >>
> >>> > >> > >> public abstract class CustomBaseRepository <E extends
> >>> > >> DomainObject<K>, K
> >>> > >> > >> extends Serializable>
> >>> > >> > >>         extends AbstractEntityRepository<E, K>
> >>> > >> > >> {
> >>> > >> > >>
> >>> > >> > >> not sure if this inheritance is supposed to work with the
> >>> Repos...
> >>> > >> > >>
> >>> > >> > >>
> >>> > >> > >>
> >>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> >>> > >> > >> andraschko.thomas@gmail.com> wrote:
> >>> > >> > >>
> >>> > >> > >>> See:
> >>> > >> > >>> https://github.com/apache/deltaspike/tree/master/
> deltaspike/
> >>> > >> > >>> modules/partial-bean/impl/src/
> test/java/org/apache/deltaspik
> >>> > >> > >>> e/test/core/api/partialbean/uc008
> >>> > >> > >>>
> >>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> >>> > >> > >>> andraschko.thomas@gmail.com>:
> >>> > >> > >>>
> >>> > >> > >>> > Interceptors in generell should be supported but only via
> >>> custom
> >>> > >> > >>> binding -
> >>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> >>> > >> > >>> >
> >>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
> >>> luisalves00@gmail.com>:
> >>> > >> > >>> >
> >>> > >> > >>> >> So far I found that @Repository is actually a
> >>> > @PartialBeanBinding
> >>> > >> > and
> >>> > >> > >>> I
> >>> > >> > >>> >> found: "Currently CDI Interceptors applied via
> >>> @Interceptors,
> >>> > >> > >>> @Intercepted
> >>> > >> > >>> >> and @Decorator are not supported by our proxies! "...does
> >>> it
> >>> > >> means
> >>> > >> > >>> that
> >>> > >> > >>> >> I'm
> >>> > >> > >>> >> screwed ;)?
> >>> > >> > >>> >>
> >>> > >> > >>> >> LA
> >>> > >> > >>> >>
> >>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> >>> > >> luisalves00@gmail.com
> >>> > >> > >
> >>> > >> > >>> >> wrote:
> >>> > >> > >>> >>
> >>> > >> > >>> >> > even with @ApplicationScoped the interceptor is not
> >>> working
> >>> > :(
> >>> > >> > can't
> >>> > >> > >>> >> > figure out why...can't @Repository methods be
> >>> intercepted?
> >>> > >> > >>> >> >
> >>> > >> > >>> >> >
> >>> > >> > >>> >> >
> >>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> >>> > >> > luisalves00@gmail.com>
> >>> > >> > >>> >> wrote:
> >>> > >> > >>> >> >
> >>> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's
> like
> >>> > >> > Spring's
> >>> > >> > >>> >> >> repositories.
> >>> > >> > >>> >> >>
> >>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> >>> > >> > luisalves00@gmail.com
> >>> > >> > >>> >
> >>> > >> > >>> >> >> wrote:
> >>> > >> > >>> >> >>
> >>> > >> > >>> >> >>> Hi,
> >>> > >> > >>> >> >>>
> >>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
> >>> > @Dependent
> >>> > >> > >>> don't run
> >>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
> >>> > >> annotation
> >>> > >> > >>> isn't
> >>> > >> > >>> >> >>> working :(
> >>> > >> > >>> >> >>> I remember that some one proposed that @Repository
> >>> > >> could/should
> >>> > >> > be
> >>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to
> >>> worry
> >>> > >> with
> >>> > >> > >>> >> anything? My
> >>> > >> > >>> >> >>> EntityManager producer is the following:
> >>> > >> > >>> >> >>>
> >>> > >> > >>> >> >>>     @Produces
> >>> > >> > >>> >> >>>     @RequestScoped
> >>> > >> > >>> >> >>>     public EntityManager get()
> >>> > >> > >>> >> >>>     {
> >>> > >> > >>> >> >>>         return entityManager;
> >>> > >> > >>> >> >>>     }
> >>> > >> > >>> >> >>>
> >>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
> >>> request /
> >>> > >> MDB
> >>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression
> ="....")...am I
> >>> > >> correct?
> >>> > >> > >>> >> >>>
> >>> > >> > >>> >> >>> regards,
> >>> > >> > >>> >> >>> LA
> >>> > >> > >>> >> >>>
> >>> > >> > >>> >> >>
> >>> > >> > >>> >> >>
> >>> > >> > >>> >> >
> >>> > >> > >>> >>
> >>> > >> > >>> >
> >>> > >> > >>> >
> >>> > >> > >>>
> >>> > >> > >>
> >>> > >> > >>
> >>> > >> > >
> >>> > >> >
> >>> > >>
> >>> > >
> >>> > >
> >>> >
> >>>
> >>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
can you update your test to remove @InterceptorBinding? and check if it
works?

 javax.cache.annotation.CacheResult is standard so I don't want to extend
it to have the @InterceptorBinding.....if this is really the problem.

On Fri, Apr 20, 2018 at 1:11 PM, Luís Alves <lu...@gmail.com> wrote:

> @Retention(RUNTIME)
> @Target({ TYPE, METHOD })
> // @InterceptorBinding
> public @interface CustomInterceptor
> {
> }
>
> I suspect is this @InterceptorBinding....but not 100% sure....what is the
> purpose of that?
>
> On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com> wrote:
>
>> don't you want to rewrite your tests with the @CacheResult interceptor ;)
>> ? to see if it works?
>>
>> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
>> andraschko.thomas@gmail.com> wrote:
>>
>>> No idea, debug if the interceptor is really called ;)
>>>
>>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>>
>>> > moved the @CustomInterceptor declaration of the interceptor for the
>>> web app
>>> > beans.xml and now it gets called....SO it should work for the cache as
>>> > well. Any hint?
>>> >
>>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com>
>>> > wrote:
>>> >
>>> > > So I've created a custom one (in fact is a "copy" of yours that logs
>>> a
>>> > > line):
>>> > >
>>> > > @Interceptor
>>> > > @CustomInterceptor
>>> > > public class CustomInterceptorImpl implements Serializable
>>> > > {
>>> > >
>>> > >     private static final long serialVersionUID =
>>> 7327752605570037403L;
>>> > >
>>> > >     @Inject
>>> > >     private Logger logger;
>>> > >
>>> > >     @AroundInvoke
>>> > >     public Object interceptIt(InvocationContext invocationContext)
>>> throws
>>> > > Exception
>>> > >     {
>>> > >         logger.info("yay :) CustomInterceptorImpl was called");
>>> > >         return invocationContext.proceed();
>>> > >     }
>>> > > }
>>> > >
>>> > > registered on the beans.xml (for service and repo layers):
>>> > >
>>> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>>> > > http://www.w3.org/2001/XMLSchema-instance"
>>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > >
>>> > >     <interceptors>
>>> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > > CacheResultInterceptor</class>
>>> > >     ...
>>> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
>>> > >     </interceptors>
>>> > >
>>> > > </beans>
>>> > >
>>> > > It's called on the service layer but not on the @Repository :(
>>> > >
>>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>>> > >
>>> > >
>>> > >
>>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>>> > > andraschko.thomas@gmail.com> wrote:
>>> > >
>>> > >> You can try with a custom interceptor and check if it's invoked?
>>> > >>
>>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
>>> > >> exclusion for this in the unit test as there is something broken,
>>> as you
>>> > >> can check in the link i posted before.
>>> > >> Otherwise, it would be great if you could provide a unittest for the
>>> > data
>>> > >> module.
>>> > >> I don't have time to prepare it by myself.
>>> > >>
>>> > >>
>>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>> > >>
>>> > >> > So far no success...@CacheResult on
>>> > >> >
>>> > >> > @ApplicationScoped
>>> > >> > @Repository
>>> > >> > public abstract class SomeRepository
>>> > >> >
>>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
>>> > >> >
>>> > >> >
>>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>>> luisalves00@gmail.com>
>>> > >> > wrote:
>>> > >> >
>>> > >> > > I ditched the CustomBaseRepository for now...but still can't
>>> get the
>>> > >> > cache
>>> > >> > > interceptor to work...here is my beans.xml:
>>> > >> > >
>>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>>> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>>> > >> > >
>>> > >> > >     <interceptors>
>>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > >> > > CacheResultInterceptor</class>
>>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>>> > >> > CacheRemoveEntryInterceptor</
>>> > >> > > class>
>>> > >> > >         <class>org.jsr107.ri.annotati
>>> ons.cdi.CacheRemoveAllIntercep
>>> > >> tor</
>>> > >> > > class>
>>> > >> > >         <class>org.jsr107.ri.annotati
>>> ons.cdi.CachePutInterceptor</
>>> > >> class>
>>> > >> > >     </interceptors>
>>> > >> > >
>>> > >> > > </beans>
>>> > >> > >
>>> > >> > >
>>> > >> > > LA
>>> > >> > >
>>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>>> luisalves00@gmail.com
>>> > >
>>> > >> > > wrote:
>>> > >> > >
>>> > >> > >> Thanks Thomas,
>>> > >> > >>
>>> > >> > >> if I understood correctly if they are on the bean.xml they
>>> should
>>> > >> works
>>> > >> > >> :)...only annotated one don't work.
>>> > >> > >>
>>> > >> > >> I'm now (not sure why I didn't had it before) getting:
>>> > >> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
>>> > >> > >> Repository creation for class class CustomBaseRepository
>>> failed. Is
>>> > >> it
>>> > >> > >> associated with a valid Entity? I got this base class for some
>>> > >> > repositories
>>> > >> > >> for some similar behavior:
>>> > >> > >>
>>> > >> > >> public abstract class CustomBaseRepository <E extends
>>> > >> DomainObject<K>, K
>>> > >> > >> extends Serializable>
>>> > >> > >>         extends AbstractEntityRepository<E, K>
>>> > >> > >> {
>>> > >> > >>
>>> > >> > >> not sure if this inheritance is supposed to work with the
>>> Repos...
>>> > >> > >>
>>> > >> > >>
>>> > >> > >>
>>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>>> > >> > >> andraschko.thomas@gmail.com> wrote:
>>> > >> > >>
>>> > >> > >>> See:
>>> > >> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
>>> > >> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
>>> > >> > >>> e/test/core/api/partialbean/uc008
>>> > >> > >>>
>>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>>> > >> > >>> andraschko.thomas@gmail.com>:
>>> > >> > >>>
>>> > >> > >>> > Interceptors in generell should be supported but only via
>>> custom
>>> > >> > >>> binding -
>>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
>>> > >> > >>> >
>>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <
>>> luisalves00@gmail.com>:
>>> > >> > >>> >
>>> > >> > >>> >> So far I found that @Repository is actually a
>>> > @PartialBeanBinding
>>> > >> > and
>>> > >> > >>> I
>>> > >> > >>> >> found: "Currently CDI Interceptors applied via
>>> @Interceptors,
>>> > >> > >>> @Intercepted
>>> > >> > >>> >> and @Decorator are not supported by our proxies! "...does
>>> it
>>> > >> means
>>> > >> > >>> that
>>> > >> > >>> >> I'm
>>> > >> > >>> >> screwed ;)?
>>> > >> > >>> >>
>>> > >> > >>> >> LA
>>> > >> > >>> >>
>>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>>> > >> luisalves00@gmail.com
>>> > >> > >
>>> > >> > >>> >> wrote:
>>> > >> > >>> >>
>>> > >> > >>> >> > even with @ApplicationScoped the interceptor is not
>>> working
>>> > :(
>>> > >> > can't
>>> > >> > >>> >> > figure out why...can't @Repository methods be
>>> intercepted?
>>> > >> > >>> >> >
>>> > >> > >>> >> >
>>> > >> > >>> >> >
>>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>>> > >> > luisalves00@gmail.com>
>>> > >> > >>> >> wrote:
>>> > >> > >>> >> >
>>> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's like
>>> > >> > Spring's
>>> > >> > >>> >> >> repositories.
>>> > >> > >>> >> >>
>>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>>> > >> > luisalves00@gmail.com
>>> > >> > >>> >
>>> > >> > >>> >> >> wrote:
>>> > >> > >>> >> >>
>>> > >> > >>> >> >>> Hi,
>>> > >> > >>> >> >>>
>>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
>>> > @Dependent
>>> > >> > >>> don't run
>>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
>>> > >> annotation
>>> > >> > >>> isn't
>>> > >> > >>> >> >>> working :(
>>> > >> > >>> >> >>> I remember that some one proposed that @Repository
>>> > >> could/should
>>> > >> > be
>>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to
>>> worry
>>> > >> with
>>> > >> > >>> >> anything? My
>>> > >> > >>> >> >>> EntityManager producer is the following:
>>> > >> > >>> >> >>>
>>> > >> > >>> >> >>>     @Produces
>>> > >> > >>> >> >>>     @RequestScoped
>>> > >> > >>> >> >>>     public EntityManager get()
>>> > >> > >>> >> >>>     {
>>> > >> > >>> >> >>>         return entityManager;
>>> > >> > >>> >> >>>     }
>>> > >> > >>> >> >>>
>>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
>>> request /
>>> > >> MDB
>>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
>>> > >> correct?
>>> > >> > >>> >> >>>
>>> > >> > >>> >> >>> regards,
>>> > >> > >>> >> >>> LA
>>> > >> > >>> >> >>>
>>> > >> > >>> >> >>
>>> > >> > >>> >> >>
>>> > >> > >>> >> >
>>> > >> > >>> >>
>>> > >> > >>> >
>>> > >> > >>> >
>>> > >> > >>>
>>> > >> > >>
>>> > >> > >>
>>> > >> > >
>>> > >> >
>>> > >>
>>> > >
>>> > >
>>> >
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
@Retention(RUNTIME)
@Target({ TYPE, METHOD })
// @InterceptorBinding
public @interface CustomInterceptor
{
}

I suspect is this @InterceptorBinding....but not 100% sure....what is the
purpose of that?

On Fri, Apr 20, 2018 at 1:06 PM, Luís Alves <lu...@gmail.com> wrote:

> don't you want to rewrite your tests with the @CacheResult interceptor ;)
> ? to see if it works?
>
> On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> No idea, debug if the interceptor is really called ;)
>>
>> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>
>> > moved the @CustomInterceptor declaration of the interceptor for the web
>> app
>> > beans.xml and now it gets called....SO it should work for the cache as
>> > well. Any hint?
>> >
>> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com>
>> > wrote:
>> >
>> > > So I've created a custom one (in fact is a "copy" of yours that logs a
>> > > line):
>> > >
>> > > @Interceptor
>> > > @CustomInterceptor
>> > > public class CustomInterceptorImpl implements Serializable
>> > > {
>> > >
>> > >     private static final long serialVersionUID = 7327752605570037403L;
>> > >
>> > >     @Inject
>> > >     private Logger logger;
>> > >
>> > >     @AroundInvoke
>> > >     public Object interceptIt(InvocationContext invocationContext)
>> throws
>> > > Exception
>> > >     {
>> > >         logger.info("yay :) CustomInterceptorImpl was called");
>> > >         return invocationContext.proceed();
>> > >     }
>> > > }
>> > >
>> > > registered on the beans.xml (for service and repo layers):
>> > >
>> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>> > > http://www.w3.org/2001/XMLSchema-instance"
>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > >
>> > >     <interceptors>
>> > >         <class>org.jsr107.ri.annotations.cdi.
>> > > CacheResultInterceptor</class>
>> > >     ...
>> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
>> > >     </interceptors>
>> > >
>> > > </beans>
>> > >
>> > > It's called on the service layer but not on the @Repository :(
>> > >
>> > > ...I'm using Wildfly 10 (CDI 1.x)...
>> > >
>> > >
>> > >
>> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
>> > > andraschko.thomas@gmail.com> wrote:
>> > >
>> > >> You can try with a custom interceptor and check if it's invoked?
>> > >>
>> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
>> > >> exclusion for this in the unit test as there is something broken, as
>> you
>> > >> can check in the link i posted before.
>> > >> Otherwise, it would be great if you could provide a unittest for the
>> > data
>> > >> module.
>> > >> I don't have time to prepare it by myself.
>> > >>
>> > >>
>> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > >>
>> > >> > So far no success...@CacheResult on
>> > >> >
>> > >> > @ApplicationScoped
>> > >> > @Repository
>> > >> > public abstract class SomeRepository
>> > >> >
>> > >> > doesn't seem to work :S not sure what I'm doing wrong.
>> > >> >
>> > >> >
>> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <
>> luisalves00@gmail.com>
>> > >> > wrote:
>> > >> >
>> > >> > > I ditched the CustomBaseRepository for now...but still can't get
>> the
>> > >> > cache
>> > >> > > interceptor to work...here is my beans.xml:
>> > >> > >
>> > >> > > <?xml version="1.0" encoding="UTF-8"?>
>> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>> > >> > > http://www.w3.org/2001/XMLSchema-instance"
>> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > >> > >
>> > >> > >     <interceptors>
>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > >> > > CacheResultInterceptor</class>
>> > >> > >         <class>org.jsr107.ri.annotations.cdi.
>> > >> > CacheRemoveEntryInterceptor</
>> > >> > > class>
>> > >> > >         <class>org.jsr107.ri.annotati
>> ons.cdi.CacheRemoveAllIntercep
>> > >> tor</
>> > >> > > class>
>> > >> > >         <class>org.jsr107.ri.annotati
>> ons.cdi.CachePutInterceptor</
>> > >> class>
>> > >> > >     </interceptors>
>> > >> > >
>> > >> > > </beans>
>> > >> > >
>> > >> > >
>> > >> > > LA
>> > >> > >
>> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
>> luisalves00@gmail.com
>> > >
>> > >> > > wrote:
>> > >> > >
>> > >> > >> Thanks Thomas,
>> > >> > >>
>> > >> > >> if I understood correctly if they are on the bean.xml they
>> should
>> > >> works
>> > >> > >> :)...only annotated one don't work.
>> > >> > >>
>> > >> > >> I'm now (not sure why I didn't had it before) getting:
>> > >> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
>> > >> > >> Repository creation for class class CustomBaseRepository
>> failed. Is
>> > >> it
>> > >> > >> associated with a valid Entity? I got this base class for some
>> > >> > repositories
>> > >> > >> for some similar behavior:
>> > >> > >>
>> > >> > >> public abstract class CustomBaseRepository <E extends
>> > >> DomainObject<K>, K
>> > >> > >> extends Serializable>
>> > >> > >>         extends AbstractEntityRepository<E, K>
>> > >> > >> {
>> > >> > >>
>> > >> > >> not sure if this inheritance is supposed to work with the
>> Repos...
>> > >> > >>
>> > >> > >>
>> > >> > >>
>> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>> > >> > >> andraschko.thomas@gmail.com> wrote:
>> > >> > >>
>> > >> > >>> See:
>> > >> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
>> > >> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
>> > >> > >>> e/test/core/api/partialbean/uc008
>> > >> > >>>
>> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>> > >> > >>> andraschko.thomas@gmail.com>:
>> > >> > >>>
>> > >> > >>> > Interceptors in generell should be supported but only via
>> custom
>> > >> > >>> binding -
>> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
>> > >> > >>> >
>> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <luisalves00@gmail.com
>> >:
>> > >> > >>> >
>> > >> > >>> >> So far I found that @Repository is actually a
>> > @PartialBeanBinding
>> > >> > and
>> > >> > >>> I
>> > >> > >>> >> found: "Currently CDI Interceptors applied via
>> @Interceptors,
>> > >> > >>> @Intercepted
>> > >> > >>> >> and @Decorator are not supported by our proxies! "...does it
>> > >> means
>> > >> > >>> that
>> > >> > >>> >> I'm
>> > >> > >>> >> screwed ;)?
>> > >> > >>> >>
>> > >> > >>> >> LA
>> > >> > >>> >>
>> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>> > >> luisalves00@gmail.com
>> > >> > >
>> > >> > >>> >> wrote:
>> > >> > >>> >>
>> > >> > >>> >> > even with @ApplicationScoped the interceptor is not
>> working
>> > :(
>> > >> > can't
>> > >> > >>> >> > figure out why...can't @Repository methods be intercepted?
>> > >> > >>> >> >
>> > >> > >>> >> >
>> > >> > >>> >> >
>> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>> > >> > luisalves00@gmail.com>
>> > >> > >>> >> wrote:
>> > >> > >>> >> >
>> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's like
>> > >> > Spring's
>> > >> > >>> >> >> repositories.
>> > >> > >>> >> >>
>> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>> > >> > luisalves00@gmail.com
>> > >> > >>> >
>> > >> > >>> >> >> wrote:
>> > >> > >>> >> >>
>> > >> > >>> >> >>> Hi,
>> > >> > >>> >> >>>
>> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
>> > @Dependent
>> > >> > >>> don't run
>> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
>> > >> annotation
>> > >> > >>> isn't
>> > >> > >>> >> >>> working :(
>> > >> > >>> >> >>> I remember that some one proposed that @Repository
>> > >> could/should
>> > >> > be
>> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to
>> worry
>> > >> with
>> > >> > >>> >> anything? My
>> > >> > >>> >> >>> EntityManager producer is the following:
>> > >> > >>> >> >>>
>> > >> > >>> >> >>>     @Produces
>> > >> > >>> >> >>>     @RequestScoped
>> > >> > >>> >> >>>     public EntityManager get()
>> > >> > >>> >> >>>     {
>> > >> > >>> >> >>>         return entityManager;
>> > >> > >>> >> >>>     }
>> > >> > >>> >> >>>
>> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP
>> request /
>> > >> MDB
>> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
>> > >> correct?
>> > >> > >>> >> >>>
>> > >> > >>> >> >>> regards,
>> > >> > >>> >> >>> LA
>> > >> > >>> >> >>>
>> > >> > >>> >> >>
>> > >> > >>> >> >>
>> > >> > >>> >> >
>> > >> > >>> >>
>> > >> > >>> >
>> > >> > >>> >
>> > >> > >>>
>> > >> > >>
>> > >> > >>
>> > >> > >
>> > >> >
>> > >>
>> > >
>> > >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
don't you want to rewrite your tests with the @CacheResult interceptor ;) ?
to see if it works?

On Fri, Apr 20, 2018 at 12:57 PM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> No idea, debug if the interceptor is really called ;)
>
> 2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > moved the @CustomInterceptor declaration of the interceptor for the web
> app
> > beans.xml and now it gets called....SO it should work for the cache as
> > well. Any hint?
> >
> > On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com>
> > wrote:
> >
> > > So I've created a custom one (in fact is a "copy" of yours that logs a
> > > line):
> > >
> > > @Interceptor
> > > @CustomInterceptor
> > > public class CustomInterceptorImpl implements Serializable
> > > {
> > >
> > >     private static final long serialVersionUID = 7327752605570037403L;
> > >
> > >     @Inject
> > >     private Logger logger;
> > >
> > >     @AroundInvoke
> > >     public Object interceptIt(InvocationContext invocationContext)
> throws
> > > Exception
> > >     {
> > >         logger.info("yay :) CustomInterceptorImpl was called");
> > >         return invocationContext.proceed();
> > >     }
> > > }
> > >
> > > registered on the beans.xml (for service and repo layers):
> > >
> > > <?xml version="1.0" encoding="UTF-8"?>
> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > > http://www.w3.org/2001/XMLSchema-instance"
> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >
> > >     <interceptors>
> > >         <class>org.jsr107.ri.annotations.cdi.
> > > CacheResultInterceptor</class>
> > >     ...
> > >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
> > >     </interceptors>
> > >
> > > </beans>
> > >
> > > It's called on the service layer but not on the @Repository :(
> > >
> > > ...I'm using Wildfly 10 (CDI 1.x)...
> > >
> > >
> > >
> > > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > > andraschko.thomas@gmail.com> wrote:
> > >
> > >> You can try with a custom interceptor and check if it's invoked?
> > >>
> > >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
> > >> exclusion for this in the unit test as there is something broken, as
> you
> > >> can check in the link i posted before.
> > >> Otherwise, it would be great if you could provide a unittest for the
> > data
> > >> module.
> > >> I don't have time to prepare it by myself.
> > >>
> > >>
> > >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >>
> > >> > So far no success...@CacheResult on
> > >> >
> > >> > @ApplicationScoped
> > >> > @Repository
> > >> > public abstract class SomeRepository
> > >> >
> > >> > doesn't seem to work :S not sure what I'm doing wrong.
> > >> >
> > >> >
> > >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <luisalves00@gmail.com
> >
> > >> > wrote:
> > >> >
> > >> > > I ditched the CustomBaseRepository for now...but still can't get
> the
> > >> > cache
> > >> > > interceptor to work...here is my beans.xml:
> > >> > >
> > >> > > <?xml version="1.0" encoding="UTF-8"?>
> > >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > >> > > http://www.w3.org/2001/XMLSchema-instance"
> > >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >> > >
> > >> > >     <interceptors>
> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >> > > CacheResultInterceptor</class>
> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> > >> > CacheRemoveEntryInterceptor</
> > >> > > class>
> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> CacheRemoveAllIntercep
> > >> tor</
> > >> > > class>
> > >> > >         <class>org.jsr107.ri.annotations.cdi.
> CachePutInterceptor</
> > >> class>
> > >> > >     </interceptors>
> > >> > >
> > >> > > </beans>
> > >> > >
> > >> > >
> > >> > > LA
> > >> > >
> > >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <
> luisalves00@gmail.com
> > >
> > >> > > wrote:
> > >> > >
> > >> > >> Thanks Thomas,
> > >> > >>
> > >> > >> if I understood correctly if they are on the bean.xml they should
> > >> works
> > >> > >> :)...only annotated one don't work.
> > >> > >>
> > >> > >> I'm now (not sure why I didn't had it before) getting:
> > >> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
> > >> > >> Repository creation for class class CustomBaseRepository failed.
> Is
> > >> it
> > >> > >> associated with a valid Entity? I got this base class for some
> > >> > repositories
> > >> > >> for some similar behavior:
> > >> > >>
> > >> > >> public abstract class CustomBaseRepository <E extends
> > >> DomainObject<K>, K
> > >> > >> extends Serializable>
> > >> > >>         extends AbstractEntityRepository<E, K>
> > >> > >> {
> > >> > >>
> > >> > >> not sure if this inheritance is supposed to work with the
> Repos...
> > >> > >>
> > >> > >>
> > >> > >>
> > >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> > >> > >> andraschko.thomas@gmail.com> wrote:
> > >> > >>
> > >> > >>> See:
> > >> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
> > >> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
> > >> > >>> e/test/core/api/partialbean/uc008
> > >> > >>>
> > >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > >> > >>> andraschko.thomas@gmail.com>:
> > >> > >>>
> > >> > >>> > Interceptors in generell should be supported but only via
> custom
> > >> > >>> binding -
> > >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> > >> > >>> >
> > >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <luisalves00@gmail.com
> >:
> > >> > >>> >
> > >> > >>> >> So far I found that @Repository is actually a
> > @PartialBeanBinding
> > >> > and
> > >> > >>> I
> > >> > >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
> > >> > >>> @Intercepted
> > >> > >>> >> and @Decorator are not supported by our proxies! "...does it
> > >> means
> > >> > >>> that
> > >> > >>> >> I'm
> > >> > >>> >> screwed ;)?
> > >> > >>> >>
> > >> > >>> >> LA
> > >> > >>> >>
> > >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> > >> luisalves00@gmail.com
> > >> > >
> > >> > >>> >> wrote:
> > >> > >>> >>
> > >> > >>> >> > even with @ApplicationScoped the interceptor is not working
> > :(
> > >> > can't
> > >> > >>> >> > figure out why...can't @Repository methods be intercepted?
> > >> > >>> >> >
> > >> > >>> >> >
> > >> > >>> >> >
> > >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> > >> > luisalves00@gmail.com>
> > >> > >>> >> wrote:
> > >> > >>> >> >
> > >> > >>> >> >> since it's proxied...it should be OK...I guess it's like
> > >> > Spring's
> > >> > >>> >> >> repositories.
> > >> > >>> >> >>
> > >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> > >> > luisalves00@gmail.com
> > >> > >>> >
> > >> > >>> >> >> wrote:
> > >> > >>> >> >>
> > >> > >>> >> >>> Hi,
> > >> > >>> >> >>>
> > >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
> > @Dependent
> > >> > >>> don't run
> > >> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
> > >> annotation
> > >> > >>> isn't
> > >> > >>> >> >>> working :(
> > >> > >>> >> >>> I remember that some one proposed that @Repository
> > >> could/should
> > >> > be
> > >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to worry
> > >> with
> > >> > >>> >> anything? My
> > >> > >>> >> >>> EntityManager producer is the following:
> > >> > >>> >> >>>
> > >> > >>> >> >>>     @Produces
> > >> > >>> >> >>>     @RequestScoped
> > >> > >>> >> >>>     public EntityManager get()
> > >> > >>> >> >>>     {
> > >> > >>> >> >>>         return entityManager;
> > >> > >>> >> >>>     }
> > >> > >>> >> >>>
> > >> > >>> >> >>> I suppose I'll have a different EM for each HTTP request
> /
> > >> MDB
> > >> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
> > >> correct?
> > >> > >>> >> >>>
> > >> > >>> >> >>> regards,
> > >> > >>> >> >>> LA
> > >> > >>> >> >>>
> > >> > >>> >> >>
> > >> > >>> >> >>
> > >> > >>> >> >
> > >> > >>> >>
> > >> > >>> >
> > >> > >>> >
> > >> > >>>
> > >> > >>
> > >> > >>
> > >> > >
> > >> >
> > >>
> > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
No idea, debug if the interceptor is really called ;)

2018-04-20 13:56 GMT+02:00 Luís Alves <lu...@gmail.com>:

> moved the @CustomInterceptor declaration of the interceptor for the web app
> beans.xml and now it gets called....SO it should work for the cache as
> well. Any hint?
>
> On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com>
> wrote:
>
> > So I've created a custom one (in fact is a "copy" of yours that logs a
> > line):
> >
> > @Interceptor
> > @CustomInterceptor
> > public class CustomInterceptorImpl implements Serializable
> > {
> >
> >     private static final long serialVersionUID = 7327752605570037403L;
> >
> >     @Inject
> >     private Logger logger;
> >
> >     @AroundInvoke
> >     public Object interceptIt(InvocationContext invocationContext) throws
> > Exception
> >     {
> >         logger.info("yay :) CustomInterceptorImpl was called");
> >         return invocationContext.proceed();
> >     }
> > }
> >
> > registered on the beans.xml (for service and repo layers):
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > http://www.w3.org/2001/XMLSchema-instance"
> >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >
> >     <interceptors>
> >         <class>org.jsr107.ri.annotations.cdi.
> > CacheResultInterceptor</class>
> >     ...
> >         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
> >     </interceptors>
> >
> > </beans>
> >
> > It's called on the service layer but not on the @Repository :(
> >
> > ...I'm using Wildfly 10 (CDI 1.x)...
> >
> >
> >
> > On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> > andraschko.thomas@gmail.com> wrote:
> >
> >> You can try with a custom interceptor and check if it's invoked?
> >>
> >> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
> >> exclusion for this in the unit test as there is something broken, as you
> >> can check in the link i posted before.
> >> Otherwise, it would be great if you could provide a unittest for the
> data
> >> module.
> >> I don't have time to prepare it by myself.
> >>
> >>
> >> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>
> >> > So far no success...@CacheResult on
> >> >
> >> > @ApplicationScoped
> >> > @Repository
> >> > public abstract class SomeRepository
> >> >
> >> > doesn't seem to work :S not sure what I'm doing wrong.
> >> >
> >> >
> >> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com>
> >> > wrote:
> >> >
> >> > > I ditched the CustomBaseRepository for now...but still can't get the
> >> > cache
> >> > > interceptor to work...here is my beans.xml:
> >> > >
> >> > > <?xml version="1.0" encoding="UTF-8"?>
> >> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> >> > > http://www.w3.org/2001/XMLSchema-instance"
> >> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> >> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >> > >
> >> > >     <interceptors>
> >> > >         <class>org.jsr107.ri.annotations.cdi.
> >> > > CacheResultInterceptor</class>
> >> > >         <class>org.jsr107.ri.annotations.cdi.
> >> > CacheRemoveEntryInterceptor</
> >> > > class>
> >> > >         <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercep
> >> tor</
> >> > > class>
> >> > >         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</
> >> class>
> >> > >     </interceptors>
> >> > >
> >> > > </beans>
> >> > >
> >> > >
> >> > > LA
> >> > >
> >> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <luisalves00@gmail.com
> >
> >> > > wrote:
> >> > >
> >> > >> Thanks Thomas,
> >> > >>
> >> > >> if I understood correctly if they are on the bean.xml they should
> >> works
> >> > >> :)...only annotated one don't work.
> >> > >>
> >> > >> I'm now (not sure why I didn't had it before) getting:
> >> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
> >> > >> Repository creation for class class CustomBaseRepository failed. Is
> >> it
> >> > >> associated with a valid Entity? I got this base class for some
> >> > repositories
> >> > >> for some similar behavior:
> >> > >>
> >> > >> public abstract class CustomBaseRepository <E extends
> >> DomainObject<K>, K
> >> > >> extends Serializable>
> >> > >>         extends AbstractEntityRepository<E, K>
> >> > >> {
> >> > >>
> >> > >> not sure if this inheritance is supposed to work with the Repos...
> >> > >>
> >> > >>
> >> > >>
> >> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> >> > >> andraschko.thomas@gmail.com> wrote:
> >> > >>
> >> > >>> See:
> >> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
> >> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
> >> > >>> e/test/core/api/partialbean/uc008
> >> > >>>
> >> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> >> > >>> andraschko.thomas@gmail.com>:
> >> > >>>
> >> > >>> > Interceptors in generell should be supported but only via custom
> >> > >>> binding -
> >> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> >> > >>> >
> >> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >> > >>> >
> >> > >>> >> So far I found that @Repository is actually a
> @PartialBeanBinding
> >> > and
> >> > >>> I
> >> > >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
> >> > >>> @Intercepted
> >> > >>> >> and @Decorator are not supported by our proxies! "...does it
> >> means
> >> > >>> that
> >> > >>> >> I'm
> >> > >>> >> screwed ;)?
> >> > >>> >>
> >> > >>> >> LA
> >> > >>> >>
> >> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> >> luisalves00@gmail.com
> >> > >
> >> > >>> >> wrote:
> >> > >>> >>
> >> > >>> >> > even with @ApplicationScoped the interceptor is not working
> :(
> >> > can't
> >> > >>> >> > figure out why...can't @Repository methods be intercepted?
> >> > >>> >> >
> >> > >>> >> >
> >> > >>> >> >
> >> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> >> > luisalves00@gmail.com>
> >> > >>> >> wrote:
> >> > >>> >> >
> >> > >>> >> >> since it's proxied...it should be OK...I guess it's like
> >> > Spring's
> >> > >>> >> >> repositories.
> >> > >>> >> >>
> >> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> >> > luisalves00@gmail.com
> >> > >>> >
> >> > >>> >> >> wrote:
> >> > >>> >> >>
> >> > >>> >> >>> Hi,
> >> > >>> >> >>>
> >> > >>> >> >>> @Repository is @Dependent scoped...and seems that
> @Dependent
> >> > >>> don't run
> >> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
> >> annotation
> >> > >>> isn't
> >> > >>> >> >>> working :(
> >> > >>> >> >>> I remember that some one proposed that @Repository
> >> could/should
> >> > be
> >> > >>> >> >>> @ApplicationScoped...if  I change them do I have to worry
> >> with
> >> > >>> >> anything? My
> >> > >>> >> >>> EntityManager producer is the following:
> >> > >>> >> >>>
> >> > >>> >> >>>     @Produces
> >> > >>> >> >>>     @RequestScoped
> >> > >>> >> >>>     public EntityManager get()
> >> > >>> >> >>>     {
> >> > >>> >> >>>         return entityManager;
> >> > >>> >> >>>     }
> >> > >>> >> >>>
> >> > >>> >> >>> I suppose I'll have a different EM for each HTTP request /
> >> MDB
> >> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
> >> correct?
> >> > >>> >> >>>
> >> > >>> >> >>> regards,
> >> > >>> >> >>> LA
> >> > >>> >> >>>
> >> > >>> >> >>
> >> > >>> >> >>
> >> > >>> >> >
> >> > >>> >>
> >> > >>> >
> >> > >>> >
> >> > >>>
> >> > >>
> >> > >>
> >> > >
> >> >
> >>
> >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
moved the @CustomInterceptor declaration of the interceptor for the web app
beans.xml and now it gets called....SO it should work for the cache as
well. Any hint?

On Fri, Apr 20, 2018 at 12:43 PM, Luís Alves <lu...@gmail.com> wrote:

> So I've created a custom one (in fact is a "copy" of yours that logs a
> line):
>
> @Interceptor
> @CustomInterceptor
> public class CustomInterceptorImpl implements Serializable
> {
>
>     private static final long serialVersionUID = 7327752605570037403L;
>
>     @Inject
>     private Logger logger;
>
>     @AroundInvoke
>     public Object interceptIt(InvocationContext invocationContext) throws
> Exception
>     {
>         logger.info("yay :) CustomInterceptorImpl was called");
>         return invocationContext.proceed();
>     }
> }
>
> registered on the beans.xml (for service and repo layers):
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
>     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>
>     <interceptors>
>         <class>org.jsr107.ri.annotations.cdi.
> CacheResultInterceptor</class>
>     ...
>         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
>     </interceptors>
>
> </beans>
>
> It's called on the service layer but not on the @Repository :(
>
> ...I'm using Wildfly 10 (CDI 1.x)...
>
>
>
> On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> You can try with a custom interceptor and check if it's invoked?
>>
>> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
>> exclusion for this in the unit test as there is something broken, as you
>> can check in the link i posted before.
>> Otherwise, it would be great if you could provide a unittest for the data
>> module.
>> I don't have time to prepare it by myself.
>>
>>
>> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>
>> > So far no success...@CacheResult on
>> >
>> > @ApplicationScoped
>> > @Repository
>> > public abstract class SomeRepository
>> >
>> > doesn't seem to work :S not sure what I'm doing wrong.
>> >
>> >
>> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com>
>> > wrote:
>> >
>> > > I ditched the CustomBaseRepository for now...but still can't get the
>> > cache
>> > > interceptor to work...here is my beans.xml:
>> > >
>> > > <?xml version="1.0" encoding="UTF-8"?>
>> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>> > > http://www.w3.org/2001/XMLSchema-instance"
>> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>> > >
>> > >     <interceptors>
>> > >         <class>org.jsr107.ri.annotations.cdi.
>> > > CacheResultInterceptor</class>
>> > >         <class>org.jsr107.ri.annotations.cdi.
>> > CacheRemoveEntryInterceptor</
>> > > class>
>> > >         <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllIntercep
>> tor</
>> > > class>
>> > >         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</
>> class>
>> > >     </interceptors>
>> > >
>> > > </beans>
>> > >
>> > >
>> > > LA
>> > >
>> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com>
>> > > wrote:
>> > >
>> > >> Thanks Thomas,
>> > >>
>> > >> if I understood correctly if they are on the bean.xml they should
>> works
>> > >> :)...only annotated one don't work.
>> > >>
>> > >> I'm now (not sure why I didn't had it before) getting:
>> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
>> > >> Repository creation for class class CustomBaseRepository failed. Is
>> it
>> > >> associated with a valid Entity? I got this base class for some
>> > repositories
>> > >> for some similar behavior:
>> > >>
>> > >> public abstract class CustomBaseRepository <E extends
>> DomainObject<K>, K
>> > >> extends Serializable>
>> > >>         extends AbstractEntityRepository<E, K>
>> > >> {
>> > >>
>> > >> not sure if this inheritance is supposed to work with the Repos...
>> > >>
>> > >>
>> > >>
>> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>> > >> andraschko.thomas@gmail.com> wrote:
>> > >>
>> > >>> See:
>> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
>> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
>> > >>> e/test/core/api/partialbean/uc008
>> > >>>
>> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>> > >>> andraschko.thomas@gmail.com>:
>> > >>>
>> > >>> > Interceptors in generell should be supported but only via custom
>> > >>> binding -
>> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
>> > >>> >
>> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> > >>> >
>> > >>> >> So far I found that @Repository is actually a @PartialBeanBinding
>> > and
>> > >>> I
>> > >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
>> > >>> @Intercepted
>> > >>> >> and @Decorator are not supported by our proxies! "...does it
>> means
>> > >>> that
>> > >>> >> I'm
>> > >>> >> screwed ;)?
>> > >>> >>
>> > >>> >> LA
>> > >>> >>
>> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
>> luisalves00@gmail.com
>> > >
>> > >>> >> wrote:
>> > >>> >>
>> > >>> >> > even with @ApplicationScoped the interceptor is not working :(
>> > can't
>> > >>> >> > figure out why...can't @Repository methods be intercepted?
>> > >>> >> >
>> > >>> >> >
>> > >>> >> >
>> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
>> > luisalves00@gmail.com>
>> > >>> >> wrote:
>> > >>> >> >
>> > >>> >> >> since it's proxied...it should be OK...I guess it's like
>> > Spring's
>> > >>> >> >> repositories.
>> > >>> >> >>
>> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
>> > luisalves00@gmail.com
>> > >>> >
>> > >>> >> >> wrote:
>> > >>> >> >>
>> > >>> >> >>> Hi,
>> > >>> >> >>>
>> > >>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent
>> > >>> don't run
>> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
>> annotation
>> > >>> isn't
>> > >>> >> >>> working :(
>> > >>> >> >>> I remember that some one proposed that @Repository
>> could/should
>> > be
>> > >>> >> >>> @ApplicationScoped...if  I change them do I have to worry
>> with
>> > >>> >> anything? My
>> > >>> >> >>> EntityManager producer is the following:
>> > >>> >> >>>
>> > >>> >> >>>     @Produces
>> > >>> >> >>>     @RequestScoped
>> > >>> >> >>>     public EntityManager get()
>> > >>> >> >>>     {
>> > >>> >> >>>         return entityManager;
>> > >>> >> >>>     }
>> > >>> >> >>>
>> > >>> >> >>> I suppose I'll have a different EM for each HTTP request /
>> MDB
>> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
>> correct?
>> > >>> >> >>>
>> > >>> >> >>> regards,
>> > >>> >> >>> LA
>> > >>> >> >>>
>> > >>> >> >>
>> > >>> >> >>
>> > >>> >> >
>> > >>> >>
>> > >>> >
>> > >>> >
>> > >>>
>> > >>
>> > >>
>> > >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Can you maybe copy the partialbean example of my unittest in your project
and check if the interceptor is called?
As you can see, it sohuld work fine on wildfly 10.1 ->
https://builds.apache.org/view/A-D/view/DeltaSpike/job/DeltaSpike_Wildfly_10.1/org.apache.deltaspike.modules$deltaspike-partial-bean-module-impl/100/testReport/org.apache.deltaspike.test.core.api.partialbean.uc008/ClassLevelInterceptorTest/

2018-04-20 13:43 GMT+02:00 Luís Alves <lu...@gmail.com>:

> So I've created a custom one (in fact is a "copy" of yours that logs a
> line):
>
> @Interceptor
> @CustomInterceptor
> public class CustomInterceptorImpl implements Serializable
> {
>
>     private static final long serialVersionUID = 7327752605570037403L;
>
>     @Inject
>     private Logger logger;
>
>     @AroundInvoke
>     public Object interceptIt(InvocationContext invocationContext) throws
> Exception
>     {
>         logger.info("yay :) CustomInterceptorImpl was called");
>         return invocationContext.proceed();
>     }
> }
>
> registered on the beans.xml (for service and repo layers):
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
>     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>
>     <interceptors>
>         <class>org.jsr107.ri.annotations.cdi.
> CacheResultInterceptor</class>
>     ...
>         <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
>     </interceptors>
>
> </beans>
>
> It's called on the service layer but not on the @Repository :(
>
> ...I'm using Wildfly 10 (CDI 1.x)...
>
>
>
> On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
> > You can try with a custom interceptor and check if it's invoked?
> >
> > I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
> > exclusion for this in the unit test as there is something broken, as you
> > can check in the link i posted before.
> > Otherwise, it would be great if you could provide a unittest for the data
> > module.
> > I don't have time to prepare it by myself.
> >
> >
> > 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> > > So far no success...@CacheResult on
> > >
> > > @ApplicationScoped
> > > @Repository
> > > public abstract class SomeRepository
> > >
> > > doesn't seem to work :S not sure what I'm doing wrong.
> > >
> > >
> > > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > >
> > > > I ditched the CustomBaseRepository for now...but still can't get the
> > > cache
> > > > interceptor to work...here is my beans.xml:
> > > >
> > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > > > http://www.w3.org/2001/XMLSchema-instance"
> > > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > > >
> > > >     <interceptors>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > > CacheResultInterceptor</class>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > > CacheRemoveEntryInterceptor</
> > > > class>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > CacheRemoveAllInterceptor</
> > > > class>
> > > >         <class>org.jsr107.ri.annotations.cdi.
> > CachePutInterceptor</class>
> > > >     </interceptors>
> > > >
> > > > </beans>
> > > >
> > > >
> > > > LA
> > > >
> > > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com>
> > > > wrote:
> > > >
> > > >> Thanks Thomas,
> > > >>
> > > >> if I understood correctly if they are on the bean.xml they should
> > works
> > > >> :)...only annotated one don't work.
> > > >>
> > > >> I'm now (not sure why I didn't had it before) getting:
> > > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
> > > >> Repository creation for class class CustomBaseRepository failed. Is
> it
> > > >> associated with a valid Entity? I got this base class for some
> > > repositories
> > > >> for some similar behavior:
> > > >>
> > > >> public abstract class CustomBaseRepository <E extends
> > DomainObject<K>, K
> > > >> extends Serializable>
> > > >>         extends AbstractEntityRepository<E, K>
> > > >> {
> > > >>
> > > >> not sure if this inheritance is supposed to work with the Repos...
> > > >>
> > > >>
> > > >>
> > > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> > > >> andraschko.thomas@gmail.com> wrote:
> > > >>
> > > >>> See:
> > > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
> > > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
> > > >>> e/test/core/api/partialbean/uc008
> > > >>>
> > > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > > >>> andraschko.thomas@gmail.com>:
> > > >>>
> > > >>> > Interceptors in generell should be supported but only via custom
> > > >>> binding -
> > > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> > > >>> >
> > > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > > >>> >
> > > >>> >> So far I found that @Repository is actually a
> @PartialBeanBinding
> > > and
> > > >>> I
> > > >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
> > > >>> @Intercepted
> > > >>> >> and @Decorator are not supported by our proxies! "...does it
> means
> > > >>> that
> > > >>> >> I'm
> > > >>> >> screwed ;)?
> > > >>> >>
> > > >>> >> LA
> > > >>> >>
> > > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> > luisalves00@gmail.com
> > > >
> > > >>> >> wrote:
> > > >>> >>
> > > >>> >> > even with @ApplicationScoped the interceptor is not working :(
> > > can't
> > > >>> >> > figure out why...can't @Repository methods be intercepted?
> > > >>> >> >
> > > >>> >> >
> > > >>> >> >
> > > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> > > luisalves00@gmail.com>
> > > >>> >> wrote:
> > > >>> >> >
> > > >>> >> >> since it's proxied...it should be OK...I guess it's like
> > > Spring's
> > > >>> >> >> repositories.
> > > >>> >> >>
> > > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> > > luisalves00@gmail.com
> > > >>> >
> > > >>> >> >> wrote:
> > > >>> >> >>
> > > >>> >> >>> Hi,
> > > >>> >> >>>
> > > >>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent
> > > >>> don't run
> > > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
> > annotation
> > > >>> isn't
> > > >>> >> >>> working :(
> > > >>> >> >>> I remember that some one proposed that @Repository
> > could/should
> > > be
> > > >>> >> >>> @ApplicationScoped...if  I change them do I have to worry
> with
> > > >>> >> anything? My
> > > >>> >> >>> EntityManager producer is the following:
> > > >>> >> >>>
> > > >>> >> >>>     @Produces
> > > >>> >> >>>     @RequestScoped
> > > >>> >> >>>     public EntityManager get()
> > > >>> >> >>>     {
> > > >>> >> >>>         return entityManager;
> > > >>> >> >>>     }
> > > >>> >> >>>
> > > >>> >> >>> I suppose I'll have a different EM for each HTTP request /
> MDB
> > > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
> > correct?
> > > >>> >> >>>
> > > >>> >> >>> regards,
> > > >>> >> >>> LA
> > > >>> >> >>>
> > > >>> >> >>
> > > >>> >> >>
> > > >>> >> >
> > > >>> >>
> > > >>> >
> > > >>> >
> > > >>>
> > > >>
> > > >>
> > > >
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
So I've created a custom one (in fact is a "copy" of yours that logs a
line):

@Interceptor
@CustomInterceptor
public class CustomInterceptorImpl implements Serializable
{

    private static final long serialVersionUID = 7327752605570037403L;

    @Inject
    private Logger logger;

    @AroundInvoke
    public Object interceptIt(InvocationContext invocationContext) throws
Exception
    {
        logger.info("yay :) CustomInterceptorImpl was called");
        return invocationContext.proceed();
    }
}

registered on the beans.xml (for service and repo layers):

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">

    <interceptors>
        <class>org.jsr107.ri.annotations.cdi.CacheResultInterceptor</class>
    ...
        <class>eu.gls.ddtm.config.CustomInterceptorImpl</class>
    </interceptors>

</beans>

It's called on the service layer but not on the @Repository :(

...I'm using Wildfly 10 (CDI 1.x)...



On Fri, Apr 20, 2018 at 11:50 AM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> You can try with a custom interceptor and check if it's invoked?
>
> I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
> exclusion for this in the unit test as there is something broken, as you
> can check in the link i posted before.
> Otherwise, it would be great if you could provide a unittest for the data
> module.
> I don't have time to prepare it by myself.
>
>
> 2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
> > So far no success...@CacheResult on
> >
> > @ApplicationScoped
> > @Repository
> > public abstract class SomeRepository
> >
> > doesn't seem to work :S not sure what I'm doing wrong.
> >
> >
> > On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com>
> > wrote:
> >
> > > I ditched the CustomBaseRepository for now...but still can't get the
> > cache
> > > interceptor to work...here is my beans.xml:
> > >
> > > <?xml version="1.0" encoding="UTF-8"?>
> > > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > > http://www.w3.org/2001/XMLSchema-instance"
> > >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> > >
> > >     <interceptors>
> > >         <class>org.jsr107.ri.annotations.cdi.
> > > CacheResultInterceptor</class>
> > >         <class>org.jsr107.ri.annotations.cdi.
> > CacheRemoveEntryInterceptor</
> > > class>
> > >         <class>org.jsr107.ri.annotations.cdi.
> CacheRemoveAllInterceptor</
> > > class>
> > >         <class>org.jsr107.ri.annotations.cdi.
> CachePutInterceptor</class>
> > >     </interceptors>
> > >
> > > </beans>
> > >
> > >
> > > LA
> > >
> > > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com>
> > > wrote:
> > >
> > >> Thanks Thomas,
> > >>
> > >> if I understood correctly if they are on the bean.xml they should
> works
> > >> :)...only annotated one don't work.
> > >>
> > >> I'm now (not sure why I didn't had it before) getting:
> > >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
> > >> Repository creation for class class CustomBaseRepository failed. Is it
> > >> associated with a valid Entity? I got this base class for some
> > repositories
> > >> for some similar behavior:
> > >>
> > >> public abstract class CustomBaseRepository <E extends
> DomainObject<K>, K
> > >> extends Serializable>
> > >>         extends AbstractEntityRepository<E, K>
> > >> {
> > >>
> > >> not sure if this inheritance is supposed to work with the Repos...
> > >>
> > >>
> > >>
> > >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> > >> andraschko.thomas@gmail.com> wrote:
> > >>
> > >>> See:
> > >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
> > >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
> > >>> e/test/core/api/partialbean/uc008
> > >>>
> > >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> > >>> andraschko.thomas@gmail.com>:
> > >>>
> > >>> > Interceptors in generell should be supported but only via custom
> > >>> binding -
> > >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> > >>> >
> > >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
> > >>> >
> > >>> >> So far I found that @Repository is actually a @PartialBeanBinding
> > and
> > >>> I
> > >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
> > >>> @Intercepted
> > >>> >> and @Decorator are not supported by our proxies! "...does it means
> > >>> that
> > >>> >> I'm
> > >>> >> screwed ;)?
> > >>> >>
> > >>> >> LA
> > >>> >>
> > >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <
> luisalves00@gmail.com
> > >
> > >>> >> wrote:
> > >>> >>
> > >>> >> > even with @ApplicationScoped the interceptor is not working :(
> > can't
> > >>> >> > figure out why...can't @Repository methods be intercepted?
> > >>> >> >
> > >>> >> >
> > >>> >> >
> > >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> > luisalves00@gmail.com>
> > >>> >> wrote:
> > >>> >> >
> > >>> >> >> since it's proxied...it should be OK...I guess it's like
> > Spring's
> > >>> >> >> repositories.
> > >>> >> >>
> > >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> > luisalves00@gmail.com
> > >>> >
> > >>> >> >> wrote:
> > >>> >> >>
> > >>> >> >>> Hi,
> > >>> >> >>>
> > >>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent
> > >>> don't run
> > >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache")
> annotation
> > >>> isn't
> > >>> >> >>> working :(
> > >>> >> >>> I remember that some one proposed that @Repository
> could/should
> > be
> > >>> >> >>> @ApplicationScoped...if  I change them do I have to worry with
> > >>> >> anything? My
> > >>> >> >>> EntityManager producer is the following:
> > >>> >> >>>
> > >>> >> >>>     @Produces
> > >>> >> >>>     @RequestScoped
> > >>> >> >>>     public EntityManager get()
> > >>> >> >>>     {
> > >>> >> >>>         return entityManager;
> > >>> >> >>>     }
> > >>> >> >>>
> > >>> >> >>> I suppose I'll have a different EM for each HTTP request / MDB
> > >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I
> correct?
> > >>> >> >>>
> > >>> >> >>> regards,
> > >>> >> >>> LA
> > >>> >> >>>
> > >>> >> >>
> > >>> >> >>
> > >>> >> >
> > >>> >>
> > >>> >
> > >>> >
> > >>>
> > >>
> > >>
> > >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
You can try with a custom interceptor and check if it's invoked?

I assume you don't use weld-2.0.0.Final or weld-2.0.0.SP1? We have a
exclusion for this in the unit test as there is something broken, as you
can check in the link i posted before.
Otherwise, it would be great if you could provide a unittest for the data
module.
I don't have time to prepare it by myself.


2018-04-20 12:40 GMT+02:00 Luís Alves <lu...@gmail.com>:

> So far no success...@CacheResult on
>
> @ApplicationScoped
> @Repository
> public abstract class SomeRepository
>
> doesn't seem to work :S not sure what I'm doing wrong.
>
>
> On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com>
> wrote:
>
> > I ditched the CustomBaseRepository for now...but still can't get the
> cache
> > interceptor to work...here is my beans.xml:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> > http://www.w3.org/2001/XMLSchema-instance"
> >     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> > http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
> >
> >     <interceptors>
> >         <class>org.jsr107.ri.annotations.cdi.
> > CacheResultInterceptor</class>
> >         <class>org.jsr107.ri.annotations.cdi.
> CacheRemoveEntryInterceptor</
> > class>
> >         <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</
> > class>
> >         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
> >     </interceptors>
> >
> > </beans>
> >
> >
> > LA
> >
> > On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com>
> > wrote:
> >
> >> Thanks Thomas,
> >>
> >> if I understood correctly if they are on the bean.xml they should works
> >> :)...only annotated one don't work.
> >>
> >> I'm now (not sure why I didn't had it before) getting:
> >> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
> >> Repository creation for class class CustomBaseRepository failed. Is it
> >> associated with a valid Entity? I got this base class for some
> repositories
> >> for some similar behavior:
> >>
> >> public abstract class CustomBaseRepository <E extends DomainObject<K>, K
> >> extends Serializable>
> >>         extends AbstractEntityRepository<E, K>
> >> {
> >>
> >> not sure if this inheritance is supposed to work with the Repos...
> >>
> >>
> >>
> >> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> >> andraschko.thomas@gmail.com> wrote:
> >>
> >>> See:
> >>> https://github.com/apache/deltaspike/tree/master/deltaspike/
> >>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
> >>> e/test/core/api/partialbean/uc008
> >>>
> >>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
> >>> andraschko.thomas@gmail.com>:
> >>>
> >>> > Interceptors in generell should be supported but only via custom
> >>> binding -
> >>> > not via "@Interceptors,  @Intercepted and @Decorator"
> >>> >
> >>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >>> >
> >>> >> So far I found that @Repository is actually a @PartialBeanBinding
> and
> >>> I
> >>> >> found: "Currently CDI Interceptors applied via @Interceptors,
> >>> @Intercepted
> >>> >> and @Decorator are not supported by our proxies! "...does it means
> >>> that
> >>> >> I'm
> >>> >> screwed ;)?
> >>> >>
> >>> >> LA
> >>> >>
> >>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <luisalves00@gmail.com
> >
> >>> >> wrote:
> >>> >>
> >>> >> > even with @ApplicationScoped the interceptor is not working :(
> can't
> >>> >> > figure out why...can't @Repository methods be intercepted?
> >>> >> >
> >>> >> >
> >>> >> >
> >>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <
> luisalves00@gmail.com>
> >>> >> wrote:
> >>> >> >
> >>> >> >> since it's proxied...it should be OK...I guess it's like
> Spring's
> >>> >> >> repositories.
> >>> >> >>
> >>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <
> luisalves00@gmail.com
> >>> >
> >>> >> >> wrote:
> >>> >> >>
> >>> >> >>> Hi,
> >>> >> >>>
> >>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent
> >>> don't run
> >>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation
> >>> isn't
> >>> >> >>> working :(
> >>> >> >>> I remember that some one proposed that @Repository could/should
> be
> >>> >> >>> @ApplicationScoped...if  I change them do I have to worry with
> >>> >> anything? My
> >>> >> >>> EntityManager producer is the following:
> >>> >> >>>
> >>> >> >>>     @Produces
> >>> >> >>>     @RequestScoped
> >>> >> >>>     public EntityManager get()
> >>> >> >>>     {
> >>> >> >>>         return entityManager;
> >>> >> >>>     }
> >>> >> >>>
> >>> >> >>> I suppose I'll have a different EM for each HTTP request / MDB
> >>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
> >>> >> >>>
> >>> >> >>> regards,
> >>> >> >>> LA
> >>> >> >>>
> >>> >> >>
> >>> >> >>
> >>> >> >
> >>> >>
> >>> >
> >>> >
> >>>
> >>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
So far no success...@CacheResult on

@ApplicationScoped
@Repository
public abstract class SomeRepository

doesn't seem to work :S not sure what I'm doing wrong.


On Fri, Apr 20, 2018 at 11:03 AM, Luís Alves <lu...@gmail.com> wrote:

> I ditched the CustomBaseRepository for now...but still can't get the cache
> interceptor to work...here is my beans.xml:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"
>     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
> http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
>
>     <interceptors>
>         <class>org.jsr107.ri.annotations.cdi.
> CacheResultInterceptor</class>
>         <class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</
> class>
>         <class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</
> class>
>         <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
>     </interceptors>
>
> </beans>
>
>
> LA
>
> On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com>
> wrote:
>
>> Thanks Thomas,
>>
>> if I understood correctly if they are on the bean.xml they should works
>> :)...only annotated one don't work.
>>
>> I'm now (not sure why I didn't had it before) getting:
>> org.apache.deltaspike.data.impl.RepositoryDefinitionException:
>> Repository creation for class class CustomBaseRepository failed. Is it
>> associated with a valid Entity? I got this base class for some repositories
>> for some similar behavior:
>>
>> public abstract class CustomBaseRepository <E extends DomainObject<K>, K
>> extends Serializable>
>>         extends AbstractEntityRepository<E, K>
>> {
>>
>> not sure if this inheritance is supposed to work with the Repos...
>>
>>
>>
>> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
>> andraschko.thomas@gmail.com> wrote:
>>
>>> See:
>>> https://github.com/apache/deltaspike/tree/master/deltaspike/
>>> modules/partial-bean/impl/src/test/java/org/apache/deltaspik
>>> e/test/core/api/partialbean/uc008
>>>
>>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <
>>> andraschko.thomas@gmail.com>:
>>>
>>> > Interceptors in generell should be supported but only via custom
>>> binding -
>>> > not via "@Interceptors,  @Intercepted and @Decorator"
>>> >
>>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
>>> >
>>> >> So far I found that @Repository is actually a @PartialBeanBinding and
>>> I
>>> >> found: "Currently CDI Interceptors applied via @Interceptors,
>>> @Intercepted
>>> >> and @Decorator are not supported by our proxies! "...does it means
>>> that
>>> >> I'm
>>> >> screwed ;)?
>>> >>
>>> >> LA
>>> >>
>>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com>
>>> >> wrote:
>>> >>
>>> >> > even with @ApplicationScoped the interceptor is not working :( can't
>>> >> > figure out why...can't @Repository methods be intercepted?
>>> >> >
>>> >> >
>>> >> >
>>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com>
>>> >> wrote:
>>> >> >
>>> >> >> since it's proxied...it should be OK...I guess it's like  Spring's
>>> >> >> repositories.
>>> >> >>
>>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <luisalves00@gmail.com
>>> >
>>> >> >> wrote:
>>> >> >>
>>> >> >>> Hi,
>>> >> >>>
>>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent
>>> don't run
>>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation
>>> isn't
>>> >> >>> working :(
>>> >> >>> I remember that some one proposed that @Repository could/should be
>>> >> >>> @ApplicationScoped...if  I change them do I have to worry with
>>> >> anything? My
>>> >> >>> EntityManager producer is the following:
>>> >> >>>
>>> >> >>>     @Produces
>>> >> >>>     @RequestScoped
>>> >> >>>     public EntityManager get()
>>> >> >>>     {
>>> >> >>>         return entityManager;
>>> >> >>>     }
>>> >> >>>
>>> >> >>> I suppose I'll have a different EM for each HTTP request / MDB
>>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
>>> >> >>>
>>> >> >>> regards,
>>> >> >>> LA
>>> >> >>>
>>> >> >>
>>> >> >>
>>> >> >
>>> >>
>>> >
>>> >
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
I ditched the CustomBaseRepository for now...but still can't get the cache
interceptor to work...here is my beans.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">

    <interceptors>
        <class>org.jsr107.ri.annotations.cdi.CacheResultInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveEntryInterceptor</class>

<class>org.jsr107.ri.annotations.cdi.CacheRemoveAllInterceptor</class>
        <class>org.jsr107.ri.annotations.cdi.CachePutInterceptor</class>
    </interceptors>

</beans>


LA

On Fri, Apr 20, 2018 at 10:45 AM, Luís Alves <lu...@gmail.com> wrote:

> Thanks Thomas,
>
> if I understood correctly if they are on the bean.xml they should works
> :)...only annotated one don't work.
>
> I'm now (not sure why I didn't had it before) getting:
> org.apache.deltaspike.data.impl.RepositoryDefinitionException: Repository
> creation for class class CustomBaseRepository failed. Is it associated with
> a valid Entity? I got this base class for some repositories for some
> similar behavior:
>
> public abstract class CustomBaseRepository <E extends DomainObject<K>, K
> extends Serializable>
>         extends AbstractEntityRepository<E, K>
> {
>
> not sure if this inheritance is supposed to work with the Repos...
>
>
>
> On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
> andraschko.thomas@gmail.com> wrote:
>
>> See:
>> https://github.com/apache/deltaspike/tree/master/deltaspike/
>> modules/partial-bean/impl/src/test/java/org/apache/
>> deltaspike/test/core/api/partialbean/uc008
>>
>> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <andraschko.thomas@gmail.com
>> >:
>>
>> > Interceptors in generell should be supported but only via custom
>> binding -
>> > not via "@Interceptors,  @Intercepted and @Decorator"
>> >
>> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
>> >
>> >> So far I found that @Repository is actually a @PartialBeanBinding and I
>> >> found: "Currently CDI Interceptors applied via @Interceptors,
>> @Intercepted
>> >> and @Decorator are not supported by our proxies! "...does it means that
>> >> I'm
>> >> screwed ;)?
>> >>
>> >> LA
>> >>
>> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com>
>> >> wrote:
>> >>
>> >> > even with @ApplicationScoped the interceptor is not working :( can't
>> >> > figure out why...can't @Repository methods be intercepted?
>> >> >
>> >> >
>> >> >
>> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com>
>> >> wrote:
>> >> >
>> >> >> since it's proxied...it should be OK...I guess it's like  Spring's
>> >> >> repositories.
>> >> >>
>> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
>> >> >> wrote:
>> >> >>
>> >> >>> Hi,
>> >> >>>
>> >> >>> @Repository is @Dependent scoped...and seems that @Dependent don't
>> run
>> >> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation
>> isn't
>> >> >>> working :(
>> >> >>> I remember that some one proposed that @Repository could/should be
>> >> >>> @ApplicationScoped...if  I change them do I have to worry with
>> >> anything? My
>> >> >>> EntityManager producer is the following:
>> >> >>>
>> >> >>>     @Produces
>> >> >>>     @RequestScoped
>> >> >>>     public EntityManager get()
>> >> >>>     {
>> >> >>>         return entityManager;
>> >> >>>     }
>> >> >>>
>> >> >>> I suppose I'll have a different EM for each HTTP request / MDB
>> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
>> >> >>>
>> >> >>> regards,
>> >> >>> LA
>> >> >>>
>> >> >>
>> >> >>
>> >> >
>> >>
>> >
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
Thanks Thomas,

if I understood correctly if they are on the bean.xml they should works
:)...only annotated one don't work.

I'm now (not sure why I didn't had it before) getting:
org.apache.deltaspike.data.impl.RepositoryDefinitionException: Repository
creation for class class CustomBaseRepository failed. Is it associated with
a valid Entity? I got this base class for some repositories for some
similar behavior:

public abstract class CustomBaseRepository <E extends DomainObject<K>, K
extends Serializable>
        extends AbstractEntityRepository<E, K>
{

not sure if this inheritance is supposed to work with the Repos...



On Fri, Apr 20, 2018 at 10:23 AM, Thomas Andraschko <
andraschko.thomas@gmail.com> wrote:

> See:
> https://github.com/apache/deltaspike/tree/master/
> deltaspike/modules/partial-bean/impl/src/test/java/org/
> apache/deltaspike/test/core/api/partialbean/uc008
>
> 2018-04-20 11:22 GMT+02:00 Thomas Andraschko <andraschko.thomas@gmail.com
> >:
>
> > Interceptors in generell should be supported but only via custom binding
> -
> > not via "@Interceptors,  @Intercepted and @Decorator"
> >
> > 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
> >
> >> So far I found that @Repository is actually a @PartialBeanBinding and I
> >> found: "Currently CDI Interceptors applied via @Interceptors,
> @Intercepted
> >> and @Decorator are not supported by our proxies! "...does it means that
> >> I'm
> >> screwed ;)?
> >>
> >> LA
> >>
> >> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >>
> >> > even with @ApplicationScoped the interceptor is not working :( can't
> >> > figure out why...can't @Repository methods be intercepted?
> >> >
> >> >
> >> >
> >> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >> >
> >> >> since it's proxied...it should be OK...I guess it's like  Spring's
> >> >> repositories.
> >> >>
> >> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
> >> >> wrote:
> >> >>
> >> >>> Hi,
> >> >>>
> >> >>> @Repository is @Dependent scoped...and seems that @Dependent don't
> run
> >> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation
> isn't
> >> >>> working :(
> >> >>> I remember that some one proposed that @Repository could/should be
> >> >>> @ApplicationScoped...if  I change them do I have to worry with
> >> anything? My
> >> >>> EntityManager producer is the following:
> >> >>>
> >> >>>     @Produces
> >> >>>     @RequestScoped
> >> >>>     public EntityManager get()
> >> >>>     {
> >> >>>         return entityManager;
> >> >>>     }
> >> >>>
> >> >>> I suppose I'll have a different EM for each HTTP request / MDB
> >> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
> >> >>>
> >> >>> regards,
> >> >>> LA
> >> >>>
> >> >>
> >> >>
> >> >
> >>
> >
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
See:
https://github.com/apache/deltaspike/tree/master/deltaspike/modules/partial-bean/impl/src/test/java/org/apache/deltaspike/test/core/api/partialbean/uc008

2018-04-20 11:22 GMT+02:00 Thomas Andraschko <an...@gmail.com>:

> Interceptors in generell should be supported but only via custom binding -
> not via "@Interceptors,  @Intercepted and @Decorator"
>
> 2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:
>
>> So far I found that @Repository is actually a @PartialBeanBinding and I
>> found: "Currently CDI Interceptors applied via @Interceptors, @Intercepted
>> and @Decorator are not supported by our proxies! "...does it means that
>> I'm
>> screwed ;)?
>>
>> LA
>>
>> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>> > even with @ApplicationScoped the interceptor is not working :( can't
>> > figure out why...can't @Repository methods be intercepted?
>> >
>> >
>> >
>> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>> >
>> >> since it's proxied...it should be OK...I guess it's like  Spring's
>> >> repositories.
>> >>
>> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
>> >> wrote:
>> >>
>> >>> Hi,
>> >>>
>> >>> @Repository is @Dependent scoped...and seems that @Dependent don't run
>> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
>> >>> working :(
>> >>> I remember that some one proposed that @Repository could/should be
>> >>> @ApplicationScoped...if  I change them do I have to worry with
>> anything? My
>> >>> EntityManager producer is the following:
>> >>>
>> >>>     @Produces
>> >>>     @RequestScoped
>> >>>     public EntityManager get()
>> >>>     {
>> >>>         return entityManager;
>> >>>     }
>> >>>
>> >>> I suppose I'll have a different EM for each HTTP request / MDB
>> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
>> >>>
>> >>> regards,
>> >>> LA
>> >>>
>> >>
>> >>
>> >
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Thomas Andraschko <an...@gmail.com>.
Interceptors in generell should be supported but only via custom binding -
not via "@Interceptors,  @Intercepted and @Decorator"

2018-04-20 11:21 GMT+02:00 Luís Alves <lu...@gmail.com>:

> So far I found that @Repository is actually a @PartialBeanBinding and I
> found: "Currently CDI Interceptors applied via @Interceptors, @Intercepted
> and @Decorator are not supported by our proxies! "...does it means that I'm
> screwed ;)?
>
> LA
>
> On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com>
> wrote:
>
> > even with @ApplicationScoped the interceptor is not working :( can't
> > figure out why...can't @Repository methods be intercepted?
> >
> >
> >
> > On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com>
> wrote:
> >
> >> since it's proxied...it should be OK...I guess it's like  Spring's
> >> repositories.
> >>
> >> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
> >> wrote:
> >>
> >>> Hi,
> >>>
> >>> @Repository is @Dependent scoped...and seems that @Dependent don't run
> >>> interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
> >>> working :(
> >>> I remember that some one proposed that @Repository could/should be
> >>> @ApplicationScoped...if  I change them do I have to worry with
> anything? My
> >>> EntityManager producer is the following:
> >>>
> >>>     @Produces
> >>>     @RequestScoped
> >>>     public EntityManager get()
> >>>     {
> >>>         return entityManager;
> >>>     }
> >>>
> >>> I suppose I'll have a different EM for each HTTP request / MDB
> >>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
> >>>
> >>> regards,
> >>> LA
> >>>
> >>
> >>
> >
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
So far I found that @Repository is actually a @PartialBeanBinding and I
found: "Currently CDI Interceptors applied via @Interceptors, @Intercepted
and @Decorator are not supported by our proxies! "...does it means that I'm
screwed ;)?

LA

On Fri, Apr 20, 2018 at 10:11 AM, Luís Alves <lu...@gmail.com> wrote:

> even with @ApplicationScoped the interceptor is not working :( can't
> figure out why...can't @Repository methods be intercepted?
>
>
>
> On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com> wrote:
>
>> since it's proxied...it should be OK...I guess it's like  Spring's
>> repositories.
>>
>> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> @Repository is @Dependent scoped...and seems that @Dependent don't run
>>> interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
>>> working :(
>>> I remember that some one proposed that @Repository could/should be
>>> @ApplicationScoped...if  I change them do I have to worry with anything? My
>>> EntityManager producer is the following:
>>>
>>>     @Produces
>>>     @RequestScoped
>>>     public EntityManager get()
>>>     {
>>>         return entityManager;
>>>     }
>>>
>>> I suppose I'll have a different EM for each HTTP request / MDB
>>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
>>>
>>> regards,
>>> LA
>>>
>>
>>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
even with @ApplicationScoped the interceptor is not working :( can't figure
out why...can't @Repository methods be intercepted?



On Fri, Apr 20, 2018 at 9:53 AM, Luís Alves <lu...@gmail.com> wrote:

> since it's proxied...it should be OK...I guess it's like  Spring's
> repositories.
>
> On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com> wrote:
>
>> Hi,
>>
>> @Repository is @Dependent scoped...and seems that @Dependent don't run
>> interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
>> working :(
>> I remember that some one proposed that @Repository could/should be
>> @ApplicationScoped...if  I change them do I have to worry with anything? My
>> EntityManager producer is the following:
>>
>>     @Produces
>>     @RequestScoped
>>     public EntityManager get()
>>     {
>>         return entityManager;
>>     }
>>
>> I suppose I'll have a different EM for each HTTP request / MDB
>> onMessage() / @Scheduled(cronExpression ="....")...am I correct?
>>
>> regards,
>> LA
>>
>
>

Re: @Repository and @CacheResult(cacheName = "my-cache")

Posted by Luís Alves <lu...@gmail.com>.
since it's proxied...it should be OK...I guess it's like  Spring's
repositories.

On Fri, Apr 20, 2018 at 9:44 AM, Luís Alves <lu...@gmail.com> wrote:

> Hi,
>
> @Repository is @Dependent scoped...and seems that @Dependent don't run
> interceptors, so @CacheResult(cacheName = "my-cache") annotation isn't
> working :(
> I remember that some one proposed that @Repository could/should be
> @ApplicationScoped...if  I change them do I have to worry with anything? My
> EntityManager producer is the following:
>
>     @Produces
>     @RequestScoped
>     public EntityManager get()
>     {
>         return entityManager;
>     }
>
> I suppose I'll have a different EM for each HTTP request / MDB onMessage()
> / @Scheduled(cronExpression ="....")...am I correct?
>
> regards,
> LA
>