下面列出了org.springframework.http.converter.json.GsonHttpMessageConverter#org.springframework.web.client.ResponseErrorHandler 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public void setErrorHandler(ResponseErrorHandler errorHandler) {
if (!(errorHandler instanceof JwtSsoResponseErrorHandler)) {
errorHandler = new JwtSsoResponseErrorHandler(errorHandler);
}
super.setErrorHandler(errorHandler);
}
@Test
public void setErrorHandlerWithUnderlying() {
ResponseErrorHandler errorHandler = mock(ResponseErrorHandler.class);
wrapper.setErrorHandler(errorHandler);
assertThat(wrapper.getErrorHandler(), is(errorHandler));
assertThat(wrapper.defaultRestTemplate.getErrorHandler(), is(errorHandler));
verify(underlying).setErrorHandler(errorHandler);
}
private RestOperations buildOAuth2RestTemplate(final String tokenName, final ResponseErrorHandler errorHandler) {
final RestTemplate restTemplate = new StupsOAuth2RestTemplate(
new StupsTokensAccessTokenProvider(tokenName, accessTokens),
new HttpComponentsClientHttpRequestFactory());
if (errorHandler != null) {
restTemplate.setErrorHandler(errorHandler);
}
return restTemplate;
}
public JwtSsoResponseErrorHandler(ResponseErrorHandler errorHandler) {
this.errorHandler = errorHandler;
}
@Override
public void setResponseErrorHandler(ResponseErrorHandler errorHandler) {
restTemplate.setErrorHandler(errorHandler);
}
@Override
public void setResponseErrorHandler(ResponseErrorHandler errorHandler) {
delegate.setResponseErrorHandler(errorHandler);
}
@Override
public void setErrorHandler(ResponseErrorHandler errorHandler) {
super.setErrorHandler(errorHandler);
acceptableRestTemplates.forEach(template -> template.setErrorHandler(errorHandler));
defaultRestTemplate.setErrorHandler(errorHandler);
}
@Override
public void setResponseErrorHandler(ResponseErrorHandler errorHandler) {
delegate.setResponseErrorHandler(errorHandler);
}
@Override
public void setResponseErrorHandler(ResponseErrorHandler errorHandler) {
executeWithRetry(() -> delegate.setResponseErrorHandler(errorHandler));
}
protected ResponseErrorHandler errorHandler() {
return new DefaultResponseErrorHandler();
}
public RestOperations getRestOperations(ResponseErrorHandler responseErrorHandler) {
return restOperations;
}
@Override
protected ResponseErrorHandler getResponseErrorHandler() {
return super.getResponseErrorHandler();
}
@Test
void shouldApplyErrorHandler() {
ResponseErrorHandler errorHandler = new DefaultResponseErrorHandler();
RestTemplate restTemplate = RestTemplateBuilder.builder().endpoint(VaultEndpoint.create("localhost", 8200))
.errorHandler(errorHandler).build();
assertThat(restTemplate.getErrorHandler()).isSameAs(errorHandler);
}
@Test
void shouldApplyErrorHandlerViaCustomizer() {
ResponseErrorHandler errorHandler = new DefaultResponseErrorHandler();
RestTemplate restTemplate = RestTemplateBuilder.builder().endpoint(VaultEndpoint.create("localhost", 8200))
.customizers(it -> it.setErrorHandler(errorHandler)).build();
assertThat(restTemplate.getErrorHandler()).isSameAs(errorHandler);
}
/**
* Override the default REST response error handler with a custom error handler.
*
* @param errorHandler
*/
void setResponseErrorHandler(ResponseErrorHandler errorHandler);
void setResponseErrorHandler(ResponseErrorHandler errorHandler);