package pwc.taxtech.atms.web; import java.nio.charset.Charset; import java.util.ArrayList; import java.util.List; import javax.xml.transform.Source; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.client.ClientHttpRequestFactory; import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; import org.springframework.http.converter.ByteArrayHttpMessageConverter; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.ResourceHttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter; import org.springframework.http.converter.xml.SourceHttpMessageConverter; import org.springframework.web.client.RestTemplate; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; @Configuration public class WebAppConfig implements InitializingBean { private static Logger logger = LoggerFactory.getLogger(WebAppConfig.class); // @Autowired // private FastJsonHttpMessageConverter fastJsonHttpMessageConverter; @Autowired private MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter; @Override public void afterPropertiesSet() throws Exception { logger.debug("WebAppConfig init"); } @Bean public RestTemplate restTemplate() { List<HttpMessageConverter<?>> messageConverters = new ArrayList<>(); // messageConverters.add(fastJsonHttpMessageConverter); messageConverters.add(mappingJackson2HttpMessageConverter); // messageConverters.add(new // StringHttpMessageConverter(Charset.forName("UTF-8"))); RestTemplate bean = new RestTemplate(messageConverters); bean.setRequestFactory(requestFactory()); return bean; } /** 设置超时的时间 */ private ClientHttpRequestFactory requestFactory() { HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(); factory.setReadTimeout(20000); factory.setConnectTimeout(5000); return factory; } }