That is a wonderful solution, I'll try that

On May 23, 2013, at 3:55 PM, "Lincoln Baxter, III" <[email protected]> 
wrote:

> If you are going down that route, just use a CDI extension scan the hierarchy 
> for annotations, then add those annotations to the implementation bean, 
> something like this: 
> 
> https://github.com/forge/core/blob/2.0/container/src/main/java/org/jboss/forge/furnace/impl/ContainerServiceExtension.java#L56
> 
> Then CDI will behave as if your implementations were actually annotated with 
> that annotation. You'll have to modify/wrap the AnnotatedType in this 
> observer method so that the appropriate annotations are returned.
> 
> CDI is wonderful.
> 
> 
> On Thu, May 23, 2013 at 9:50 AM, Erik Jan de Wit <[email protected]> wrote:
> Right what I should have added is that on the server side the interceptors 
> are cdi interceptors and I cannot just change the way cdi will look for 
> annotations. The other way around only have them on the implementation also 
> doesn't work because the client side code will not be able to access the 
> implementation. So possible solution would be to recreate the cdi interceptor 
> concept our self. 
> 
> On May 23, 2013, at 3:40 PM, "Lincoln Baxter, III" <[email protected]> 
> wrote:
> 
>> Ah yes, the good old "why are my annotated interface method annotations not 
>> inherIted?" question. This all depends on how you are scanning for the 
>> annotation. Typically annotation scanning only looks at the base level 
>> class, but you generally have to walk up the type hierarchy to find the real 
>> answer :) like so:
>> 
>> https://github.com/forge/core/blob/2.0/container-api/src/main/java/org/jboss/forge/furnace/util/Annotations.java#L189
>> 
>> Hope this helps,
>> ~Lincoln
>> 
>> 
>> On Thu, May 23, 2013 at 6:02 AM, Erik Jan de Wit <[email protected]> wrote:
>> Hi,
>> 
>> Good news I think I'm done with the security module, finally. But there is 
>> one last thing that is bothering me. Maybe someone has a solution I didn't 
>> think of.
>> 
>> Like I've explained before I have a 2 SecurityInterceptors one on the client 
>> and one on the server. With the client security interceptor I check the 
>> servers state and 'redirect' the user to the login page if he is not logged 
>> in. Because the client can be manipulated there is also a server side 
>> interceptor that will throw a exception if the user is not logged in.
>> 
>> This is all very nice and all a user will have to do is annotate the 
>> methods. I use the same annotation for both the client and the server side 
>> interceptor, but I have to annotate the remote interface and the service 
>> implementation e.g.
>> 
>> @Remote
>> 
>> 
>> public interface MessageService {
>> 
>> 
>>   @RequireAuthentication
>>   String hello();
>>  
>> 
>> 
>>   @RequireRoles("admin")
>>   String ping();
>> 
>> 
>> }
>> 
>> @Service
>> public class MessageServiceImpl implements MessageService {
>> 
>> 
>>   @Inject
>>   AuthenticationService authenticationService;
>>  
>> 
>> 
>>   @Override
>>   @RequireAuthentication
>>   public String hello() {
>> 
>> 
>> 
>> 
>> What I don't like is that the user will need to keep these to in sync, do 
>> you guys have an idea to have only one of these but still have both of the 
>> interceptors triggered?
>> 
>> Cheers,
>>      Erik Jan
>> 
>> 
>> _______________________________________________
>> errai-dev mailing list
>> [email protected]
>> https://lists.jboss.org/mailman/listinfo/errai-dev
>> 
>> 
>> 
>> -- 
>> Lincoln Baxter, III
>> http://ocpsoft.org
>> "Simpler is better."
>> _______________________________________________
>> errai-dev mailing list
>> [email protected]
>> https://lists.jboss.org/mailman/listinfo/errai-dev
> 
> 
> _______________________________________________
> errai-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/errai-dev
> 
> 
> 
> -- 
> Lincoln Baxter, III
> http://ocpsoft.org
> "Simpler is better."
> _______________________________________________
> errai-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/errai-dev

_______________________________________________
errai-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/errai-dev

Reply via email to