无法在控制器的方法中使用带有附加参数的 HttpServletRequest

Fail to have HttpServletRequest with additional argument in a method in a controller

当我将 HttpServletRequest 作为其参数之一时,当我添加附加参数时,我无法使我的控制器工作。以下代码编译并没有出现异常。

@POST
@Path("new")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public String create(HttpServletRequest request) {

}

但是,当我添加额外的参数时,抛出异常。

@POST
@Path("new")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public String create(HttpServletRequest request,  ClientDto clientDto) {

}

例外情况:

[[FATAL] Method public java.lang.String CreditController.create(
javax.servlet.http.HttpServletRequest,dto.ClientDto) on resource class CreditController
contains multiple parameters with no annotation.
Unable to resolve the injection source.;

根据@GyroGearless 的建议:

好像少了@Context注解,你可以用这个试试,

@POST
@Path("new")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public String create(@Context HttpServletRequest request, ClientDto clientDto) {