Java Jersey上传文件时无法授权用户
在默认函数中,我可以使用ContainerRequestContext requestCtx从请求中获取securitycontext和用户名 但由于某些原因,当在使用MediaType.MULTIPART\u FORM\u数据的函数中使用此函数时,我得到以下错误: org.glassfish.jersey.server.model.ModelValidationException:应用程序资源模型的验证在应用程序初始化期间失败 代码: 如果没有ContainerRequestContext requestCtx,上面的代码就可以正常工作Java Jersey上传文件时无法授权用户,java,file-upload,jersey,multipartform-data,security-context,Java,File Upload,Jersey,Multipartform Data,Security Context,在默认函数中,我可以使用ContainerRequestContext requestCtx从请求中获取securitycontext和用户名 但由于某些原因,当在使用MediaType.MULTIPART\u FORM\u数据的函数中使用此函数时,我得到以下错误: org.glassfish.jersey.server.model.ModelValidationException:应用程序资源模型的验证在应用程序初始化期间失败 代码: 如果没有ContainerRequestContext r
从我的ContainerRequestContext获取数据并同时上传文件的最佳方式是什么?在阅读随机帖子时找到了解决方案。我发现在ContainerRequestContext requestCtx前面添加@Context注释解决了这个问题 我希望我能帮助其他人解决这个问题,因为我找不到其他类似的答案
@POST
@Path("{albumcode}")
@RolesAllowed("user")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadPicture(@PathParam("code") String code,
FormDataMultiPart multipart,
@Context ContainerRequestContext requestCtx) {
@POST
@Path("{albumcode}")
@RolesAllowed("user")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadPicture(@PathParam("code") String code,
FormDataMultiPart multipart,
@Context ContainerRequestContext requestCtx) {