@Bean //TODO gson public DefaultHttpEntityMethodProcessor defaultHttpEntityMethodProcessor() { return DefaultHttpEntityMethodProcessor.defaultHttpEntityMethodProcessor(this.environment, this.objectMapper); }
public static DefaultHttpEntityMethodProcessor defaultHttpEntityMethodProcessor( // final PropertyResolver propertyResolver, // final Object objectMapper // ) { // before WebMvcAutoConfiguration, cant autowire contentNegotiationManager and httpMessageConverters // Requested bean is currently in creation: Is there an unresolvable circular reference final ContentNegotiationManager defaultContentNegotiationManager = defaultContentNegotiationManager(); final List<HttpMessageConverter<?>> defaultHttpMessageConverters = defaultHttpMessageConverters( // propertyResolver, objectMapper); final DefaultHttpEntityMethodProcessor processor = new DefaultHttpEntityMethodProcessor(); processor.setContentNegotiationManager(defaultContentNegotiationManager); processor.setMessageConverters(defaultHttpMessageConverters); return processor; } }
@Bean public RequestResolver requestResolver() { return new DefaultRequestResolver(this.appProperties.getSecurity().getLoginEndpoint()); }
@Bean public DomainResolver domainResolver() { final Session.Cookie sessionCookie = this.serverProperties.getSession().getCookie(); return new DefaultDomainResolver( // sessionCookie.getDomain(), // this.appProperties.getProdEnvironment() // ); }
public void handleResolved( // final HttpServletRequest request, // final HttpServletResponse response, // final ResolvedError resolvedError // ) { final ResponseEntity<ResolvedError> returnValue = toResponseEntity(resolvedError); if (returnValue != null) { try { final Method method = ClassUtils.getMethod( // ExceptionResolver.class, "resolve", HttpServletRequest.class, Throwable.class // ); final MethodParameter returnTypeMethodParam = new MethodParameter(method, -1); // This method caches the resolved value, so it's convenient to initialize it only once here. returnTypeMethodParam.getGenericParameterType(); // XXX: Create MethodParameter from the actually used subclass of ExceptionResolver? final MethodParameter returnType = new MethodParameter(returnTypeMethodParam); final ModelAndViewContainer mavContainer = new ModelAndViewContainer(); final NativeWebRequest webRequest = new ServletWebRequest(request, response); this.httpEntityMethodProcessor.handleReturnValue(returnValue, returnType, mavContainer, webRequest); } catch (final Exception ex) { if (log.isWarnEnabled()) { log.warn("Failed to process error response: {}", returnValue, ex); } } } } }
/** * @param resolvers exceptionResolvers * @deprecated see: {@link org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport * #addDefaultHandlerExceptionResolvers(List) addDefaultHandlerExceptionResolvers} */ @Deprecated protected final void addDefaultHandlerExceptionResolvers( // final List<HandlerExceptionResolver> resolvers // ) { final List<ResponseBodyAdvice<?>> interceptors = newArrayList(); if (getJackson2Present()) { interceptors.add(new JsonViewResponseBodyAdvice()); } final ExceptionHandlerExceptionResolver handlerExceptionResolver = new ExceptionHandlerExceptionResolver(); handlerExceptionResolver.setMessageConverters(this.defaultHttpEntityMethodProcessor.getMessageConverters()); handlerExceptionResolver.setResponseBodyAdvice(interceptors); handlerExceptionResolver.setApplicationContext(this.applicationContext); handlerExceptionResolver.afterPropertiesSet(); final ResponseStatusExceptionResolver responseStatusExceptionResolver = new ResponseStatusExceptionResolver(); responseStatusExceptionResolver.setMessageSource(this.applicationContext); resolvers.add(handlerExceptionResolver); // resolvers add responseStatusExceptionResolver ? // resolvers add new DefaultHandlerExceptionResolver ? }
public static DefaultHttpEntityMethodProcessor defaultHttpEntityMethodProcessor( // final PropertyResolver propertyResolver, // final Object objectMapper // ) { // before WebMvcAutoConfiguration, cant autowire contentNegotiationManager and httpMessageConverters // Requested bean is currently in creation: Is there an unresolvable circular reference final ContentNegotiationManager defaultContentNegotiationManager = defaultContentNegotiationManager(); final List<HttpMessageConverter<?>> defaultHttpMessageConverters = defaultHttpMessageConverters( // propertyResolver, objectMapper); final DefaultHttpEntityMethodProcessor processor = new DefaultHttpEntityMethodProcessor(); processor.setContentNegotiationManager(defaultContentNegotiationManager); processor.setMessageConverters(defaultHttpMessageConverters); return processor; } }
@Bean //TODO gson public DefaultHttpEntityMethodProcessor defaultHttpEntityMethodProcessor() { return DefaultHttpEntityMethodProcessor.defaultHttpEntityMethodProcessor(this.environment, this.objectMapper); }
@Bean public RequestResolver requestResolver() { return new DefaultRequestResolver(this.appProperties.getSecurity().getLoginEndpoint()); }
@Bean public DomainResolver domainResolver() { final Session.Cookie sessionCookie = this.serverProperties.getSession().getCookie(); return new DefaultDomainResolver( // sessionCookie.getDomain(), // this.appProperties.getProdEnvironment() // ); }
public void handleResolved( // final HttpServletRequest request, // final HttpServletResponse response, // final ResolvedError resolvedError // ) { final ResponseEntity<ResolvedError> returnValue = toResponseEntity(resolvedError); if (returnValue != null) { try { final Method method = ClassUtils.getMethod( // ExceptionResolver.class, "resolve", HttpServletRequest.class, Throwable.class // ); final MethodParameter returnTypeMethodParam = new MethodParameter(method, -1); // This method caches the resolved value, so it's convenient to initialize it only once here. returnTypeMethodParam.getGenericParameterType(); // XXX: Create MethodParameter from the actually used subclass of ExceptionResolver? final MethodParameter returnType = new MethodParameter(returnTypeMethodParam); final ModelAndViewContainer mavContainer = new ModelAndViewContainer(); final NativeWebRequest webRequest = new ServletWebRequest(request, response); this.httpEntityMethodProcessor.handleReturnValue(returnValue, returnType, mavContainer, webRequest); } catch (final Exception ex) { if (log.isWarnEnabled()) { log.warn("Failed to process error response: {}", returnValue, ex); } } } } }
/** * @param resolvers exceptionResolvers * @deprecated see: {@link org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport * #addDefaultHandlerExceptionResolvers(List) addDefaultHandlerExceptionResolvers} */ @Deprecated protected final void addDefaultHandlerExceptionResolvers( // final List<HandlerExceptionResolver> resolvers // ) { final List<ResponseBodyAdvice<?>> interceptors = newArrayList(); if (getJackson2Present()) { interceptors.add(new JsonViewResponseBodyAdvice()); } final ExceptionHandlerExceptionResolver handlerExceptionResolver = new ExceptionHandlerExceptionResolver(); handlerExceptionResolver.setMessageConverters(this.defaultHttpEntityMethodProcessor.getMessageConverters()); handlerExceptionResolver.setResponseBodyAdvice(interceptors); handlerExceptionResolver.setApplicationContext(this.applicationContext); handlerExceptionResolver.afterPropertiesSet(); final ResponseStatusExceptionResolver responseStatusExceptionResolver = new ResponseStatusExceptionResolver(); responseStatusExceptionResolver.setMessageSource(this.applicationContext); resolvers.add(handlerExceptionResolver); // resolvers add responseStatusExceptionResolver ? // resolvers add new DefaultHandlerExceptionResolver ? }