diff --git a/hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/aop/DefaultAopMethodAuthorizeDefinitionParser.java b/hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/aop/DefaultAopMethodAuthorizeDefinitionParser.java index e2c4ccd55..49f31afe4 100644 --- a/hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/aop/DefaultAopMethodAuthorizeDefinitionParser.java +++ b/hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/aop/DefaultAopMethodAuthorizeDefinitionParser.java @@ -16,6 +16,7 @@ import java.lang.reflect.Method; import java.util.Arrays; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.concurrent.ConcurrentHashMap; /** @@ -48,10 +49,13 @@ public class DefaultAopMethodAuthorizeDefinitionParser implements AopMethodAutho if (!CollectionUtils.isEmpty(parserCustomers)) { definition = parserCustomers.stream() .map(customer -> customer.parse(paramContext)) + .filter(Objects::nonNull) .findAny().orElse(null); if (definition != null) { + if(definition instanceof EmptyAuthorizeDefinition)return null; return definition; } + } Authorize classAuth = AopUtils.findAnnotation(paramContext.getTarget().getClass(), Authorize.class);