小编Ric*_*sár的帖子

EJB jax-rs资源上的Jersey自定义SecurityContext

我正在尝试实现自己的ContainerRequestFilter配置SecurityContext.它在jax-rs资源上运行良好,但EJB jax-rs抛出javax.ejb.AccessLocalException

我发现只有相关的东西是4岁,而且解决方法似乎并不漂亮. https://java.net/projects/jersey/lists/users/archive/2010-05/message/265

我的自定义SecurityContext:

@Provider
@PreMatching
public class SecurityFilter implements ContainerRequestFilter {

    @Override
    public void filter(ContainerRequestContext filterContext) throws IOException {
        filterContext.setSecurityContext(new Authorizer());
    }

    public class Authorizer implements SecurityContext {

    public Principal getUserPrincipal() {
        return null;
    }

    public boolean isUserInRole(String role) {
        return true;
    }

    public boolean isSecure() {
        return false;
    }

    public String getAuthenticationScheme() {
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

经测试的资源(无@Stateless)

@Path("test")
@Stateless
public class TestSecureResource {

    @GET
    @RolesAllowed("admin")
    @Path("admin")
    public Response secureTest() { …
Run Code Online (Sandbox Code Playgroud)

jax-rs java-ee glassfish-4 jersey-2.0

4
推荐指数
1
解决办法
4861
查看次数

标签 统计

glassfish-4 ×1

java-ee ×1

jax-rs ×1

jersey-2.0 ×1