You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Christian Schneider (JIRA)" <ji...@apache.org> on 2015/04/30 07:29:07 UTC

[jira] [Assigned] (ARIES-1316) Problem with intercepting authorizing annotations of a class declared as an interface

     [ https://issues.apache.org/jira/browse/ARIES-1316?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Schneider reassigned ARIES-1316:
------------------------------------------

    Assignee: Christian Schneider

> Problem with intercepting authorizing annotations of a class declared as an interface
> -------------------------------------------------------------------------------------
>
>                 Key: ARIES-1316
>                 URL: https://issues.apache.org/jira/browse/ARIES-1316
>             Project: Aries
>          Issue Type: Bug
>          Components: Blueprint
>    Affects Versions: blueprint-authz-1.0.0 
>            Reporter: Pavel Alekhin
>            Assignee: Christian Schneider
>            Priority: Minor
>
> Using of interface variable causes empty roles' list error {color:red}Method call interface EchoService.echo denied. Roles allowed are []{color}, when interface doesn't have method authorizing annotations, while implementing class has.
> Code example:
> {code:title=EchoService.java|borderStyle=solid}
> public interface EchoService {
>         //@RolesAllowed("admin")
>         public String echo(String message);
> } 
> {code}
> {code:title=SimpleEchoService.java|borderStyle=solid}
> public class SimpleEchoService implements EchoService {
>         @RolesAllowed("admin")
>         @Override
>         public String echo(String message) {
>                 return message;
>         }
> } 
> {code}
> {code:title=EchoCommand.java|borderStyle=solid}
> @Command(scope = "kb", name = "echo")
> public class EchoCommand extends OsgiCommandSupport {
>     private EchoService echoService;
>     public EchoService getEchoService() {
>         return echoService;
>     }
>     public void setEchoService(EchoService echoService) {
>         this.echoService = echoService;
>     }
>     @Argument(index = 0, name = "message", required = true, multiValued = false)
>     private String message;
>     @Override
>     protected Object doExecute() throws Exception {
>         return echoService.echo(message);
>     }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)