有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JAXWS如何在端点外部注入SecurityContext

我在jax ws注入SecurityContext时遇到问题。下面是一个例子:

@JWTTokenNeeded
@POST
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Path("/list")
public String list(PublishProductsRequest request, @Context SecurityContext securityContext) {

    User user = userService.getByUserPrincipal(securityContext.getUserPrincipal());
}

此时使用@Context SecurityContext,我可以收到我需要的信息

在这之后,我需要调用一个服务来搜索一些信息,但是这些信息需要被customerId过滤,并且这个customerId在用户内部

服务将如下所示:

productService.list();

在服务中,我将有一个DAO,如下所示:

productDao.list();

选择内部Dao,如下所示:

select * from products where customer_id = :user.customer_id;

因此,我想知道将用户注入服务(@component)或Dao(@Repository)中是否可能或最好的方法

当然这是一个例子,但我有很多方法需要用户提供信息,我不想将其作为参数传递,比如:

productService.list(user);

productDao.list(user);

共 (0) 个答案