本文整理汇总了Java中javax.ws.rs.container.ContainerResponseContext.getEntity方法的典型用法代码示例。如果您正苦于以下问题:Java ContainerResponseContext.getEntity方法的具体用法?Java ContainerResponseContext.getEntity怎么用?Java ContainerResponseContext.getEntity使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.ws.rs.container.ContainerResponseContext
的用法示例。
在下文中一共展示了ContainerResponseContext.getEntity方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processResponse
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void processResponse(ContainerRequestContext requestContext, ContainerResponseContext responseContext,
ResourceInfo resourceInfo) {
MediaType mediaType = responseContext.getMediaType();
if (mediaType != null && MediaType.APPLICATION_JSON_TYPE.equals(mediaType)) {
Object responseData = responseContext.getEntity();
WrapperResponseEntity jsonResponse;
if (responseData instanceof WrapperResponseEntity) {
jsonResponse = (WrapperResponseEntity) responseData;
} else {
jsonResponse = new WrapperResponseEntity(ResponseCode.OK);
jsonResponse.setData(responseData);
}
responseContext.setStatus(ResponseCode.OK.getCode());
responseContext.setEntity(jsonResponse);
}
}
示例2: mapResponseLogBean
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
private ResponseLogBean mapResponseLogBean(ContainerResponseContext responseContext) throws IOException {
ResponseLogBean responseLogBean = new ResponseLogBean();
responseLogBean.setStatus(responseContext.getStatus());
Map<String, String> headers = Maps.newHashMap();
if (responseContext.getEntity() instanceof InputStream) {
JsonNode responseEntity = objectMapper.readTree((InputStream) responseContext.getEntity());
responseLogBean.setBody(responseEntity);
responseContext.setEntity(responseEntity);
} else {
responseLogBean.setBody(objectMapper.convertValue(responseContext.getEntity(), JsonNode.class));
}
for (Map.Entry<String, List<Object>> header : responseContext.getHeaders().entrySet()) {
headers.put(header.getKey(), joiner.join(header.getValue()));
}
responseLogBean.setHeaders(headers);
return responseLogBean;
}
示例3: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
public void filter(ContainerRequestContext requestContext,
ContainerResponseContext responseContext) throws IOException {
String method = requestContext.getMethod();
logger.debug("Requesting " + method + " for path " + requestContext.getUriInfo().getPath());
Object entity = responseContext.getEntity();
if (entity != null) {
logger.debug("Response " + new ObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(entity));
}
}
示例4: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext)
throws IOException {
if(responseContext.getEntityClass() == Template.class) {
SuspendableContainerResponseContext ctx = (SuspendableContainerResponseContext) responseContext;
ctx.suspend();
Template template = (Template) responseContext.getEntity();
template.render().subscribe(resp -> {
ctx.setEntity(resp.getEntity());
ctx.setStatus(resp.getStatus());
ctx.resume();
}, err -> ctx.resume(err));
}
}
示例5: processResponse
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void processResponse(ContainerRequestContext requestContext,
ContainerResponseContext responseContext,
ResourceInfo resourceInfo) {
MediaType mediaType = responseContext.getMediaType();
if (mediaType != null && MediaType.APPLICATION_JSON_TYPE.equals(mediaType)) {
Object responseData = responseContext.getEntity();
WrapperResponseEntity jsonResponse;
if (responseData instanceof WrapperResponseEntity) {
jsonResponse = (WrapperResponseEntity) responseData;
} else {
jsonResponse = new WrapperResponseEntity(ResponseCode.OK);
jsonResponse.setData(responseData);
}
responseContext.setStatus(ResponseCode.OK.getCode());
responseContext.setEntity(jsonResponse);
}
}
示例6: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void filter(
ContainerRequestContext containerRequestContext,
ContainerResponseContext containerResponseContext)
throws IOException {
Object entity = containerResponseContext.getEntity();
if (entity instanceof Try.Failure) {
Try.Failure failure = (Try.Failure)entity;
Exception exception = failure.getException();
Optional<APIError> optional = _exceptionConverterManager.convert(
exception);
APIError apiError = optional.orElseThrow(
() -> new MustHaveExceptionConverter(exception.getClass()));
if (_apioLogger != null) {
_apioLogger.error(apiError);
}
ErrorMessageMapper errorMessageMapper =
_errorMessageMapperManager.getErrorMessageMapper(
apiError, _httpHeaders);
String result = ErrorWriter.writeError(
errorMessageMapper, apiError, _httpHeaders);
MultivaluedMap<String, Object> headers =
containerResponseContext.getHeaders();
headers.remove("Content-Type");
headers.add("Content-Type", errorMessageMapper.getMediaType());
containerResponseContext.setEntity(result);
containerResponseContext.setStatus(apiError.getStatusCode());
}
}
示例7: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
/**
* Creates JSON API responses for custom JAX-RS actions returning Katharsis resources.
*/
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
Object response = responseContext.getEntity();
if (response == null) {
return;
}
// only modify responses which contain a single or a list of Katharsis resources
if (isResourceResponse(response)) {
KatharsisBoot boot = feature.getBoot();
ResourceRegistry resourceRegistry = boot.getResourceRegistry();
DocumentMapper documentMapper = boot.getDocumentMapper();
ServiceUrlProvider serviceUrlProvider = resourceRegistry.getServiceUrlProvider();
try {
UriInfo uriInfo = requestContext.getUriInfo();
if (serviceUrlProvider instanceof UriInfoServiceUrlProvider) {
((UriInfoServiceUrlProvider) serviceUrlProvider).onRequestStarted(uriInfo);
}
JsonApiResponse jsonApiResponse = new JsonApiResponse();
jsonApiResponse.setEntity(response);
// use the Katharsis document mapper to create a JSON API response
responseContext.setEntity(documentMapper.toDocument(jsonApiResponse, null));
responseContext.getHeaders().put("Content-Type", Arrays.asList((Object)JsonApiMediaType.APPLICATION_JSON_API));
}
finally {
if (serviceUrlProvider instanceof UriInfoServiceUrlProvider) {
((UriInfoServiceUrlProvider) serviceUrlProvider).onRequestFinished();
}
}
}
}
示例8: isBinaryEntity
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
protected boolean isBinaryEntity(ContainerRequestContext requestContext, ContainerResponseContext responseContext) {
Object entity = responseContext.getEntity();
return entity instanceof byte[]
|| entity instanceof File
|| entity instanceof StreamingOutput
|| entity instanceof InputStream
|| entity instanceof DataSource;
}
示例9: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
if(responseContext.getEntity() instanceof List){
List<Entity> filteredEntities = AuthorizationFactory.getAuthorizationManager().filterResponse((List<Entity>) responseContext.getEntity(), (User) requestContext.getProperty("user"));
responseContext.setEntity(filteredEntities);
}
}
示例10: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void filter(ContainerRequestContext req, ContainerResponseContext resp) throws IOException {
if (resp.hasEntity() && (resp.getEntity() instanceof Status)) {
Status status = (Status) resp.getEntity();
int code = (Status.State.UP == status.getState()) ? 200 : 503;
resp.setStatus(code);
resp.setEntity(status.toJson());
resp.getHeaders().putSingle("Content-Type", MediaType.APPLICATION_JSON);
}
}
示例11: filter
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext)
throws IOException {
AuthenticationVariable authenticationVariable = AuthenticationVariable.getAuthenticationVariable();
try {
boolean crypt = authenticationVariable.isCrypt();
if (crypt) {
Object entity = responseContext.getEntity();
String key = authenticationVariable.getKey();
String encrypt = aesCrypto.encrypt(JsonUtil.toJson(entity), key);
responseContext.setEntity(encrypt, new Annotation[] {}, MediaType.TEXT_PLAIN_TYPE);
}
} catch (Exception e) {
responseContext.setEntity("权限或秘钥错误!", new Annotation[] {}, MediaType.TEXT_PLAIN_TYPE);
}
User user = authenticationVariable.getUser();
if (null != user) {
UserTokenType userAuthorizationType = user.getUserAuthorizationType();
MultivaluedMap<String, Object> headers = responseContext.getHeaders();
if (userAuthorizationType.equals(UserTokenType.SINGLE_TOKEN)) {
headers.remove(AUTHORIZATION_HEADER);
headers.add(AUTHORIZATION_HEADER, UserTokenType.SINGLE_TOKEN.getValue() + " " + user.getNewToken());
Map<String, NewCookie> cookies = responseContext.getCookies();
NewCookie cookie = new NewCookie(UserTokenType.SINGLE_TOKEN.getValue(), user.getNewToken());
cookies.put(UserTokenType.SINGLE_TOKEN.getValue(), cookie);
} else if (user.isNeedRefreshToken()) {
headers.add(DUBBO_ATTACHMENT_HEADER, "refresh_token=need");
}
}
}
示例12: processResponse
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
public void processResponse(ContainerRequestContext requestContext,
ContainerResponseContext responseContext,
ResourceInfo resourceInfo) {
Object responseData = responseContext.getEntity();
logger.info("response:\n", JsonUtils.toJson(responseData));
}
示例13: processResponse
import javax.ws.rs.container.ContainerResponseContext; //导入方法依赖的package包/类
public void processResponse(ContainerRequestContext requestContext, ContainerResponseContext responseContext,
ResourceInfo resourceInfo) {
Object responseData = responseContext.getEntity();
logger.info("response:\n",JsonUtils.toJson(responseData));
}