【发布时间】:2017-09-25 11:54:25
【问题描述】:
我有一个实现 ContainerRequestFilter 的类 AuthorizationFilter。
@Provider
@Authorization
public class AuthorizationFilter implements ContainerRequestFilter {
@Override
public void filter(ContainerRequestContext requestContext) throws
IOException {
// TODO Auto-generated method stub
InputStream entityIn = requestContext.getEntityStream();
}
}
这个过滤器应该在这个方法之前被调用:
@Path("/delete/volume")
@Authorization
public Response deleteVolumeForTechAccount(VolumeRequestJSON volumeForDeletion) {
log.debug("Delete volume was called ");
VolumeOperation operator = getVolumeOperator();
try {
log.debug("Deleting volume with id: " + volumeForDeletion.getVolumeId());
operator.deleteVolume(volumeForDeletion.getVolumeId());
log.debug("Volume with id: " + volumeForDeletion.getVolumeId() + "was deleted");
return Response.ok().build();
} catch (OperationException ex) {
log.error("OperationException occured durring deletion of volume: " + volumeForDeletion.getVolumeId(), ex);
return buildResponseWithHeader(HttpURLConnection.HTTP_INTERNAL_ERROR, ex.getMessage());
}
}
我用以下 JSON 数据调用其余部分:
{"volumeId":"test"}
方法执行成功但是当我调用时:
requestContext.getEntityStream() 在过滤器中它总是返回 null。
我想读取过滤器中的json数据。
如果我做错了什么,请解释一下。
谢谢
【问题讨论】:
标签: java json web-services jax-rs cxf