List of usage examples for org.springframework.web.client RestTemplate setRequestFactory
@Override public void setRequestFactory(ClientHttpRequestFactory requestFactory)
From source file:org.cloudfoundry.identity.uaa.ServerRunning.java
public RestTemplate createRestTemplate() { RestTemplate client = new RestTemplate(); client.setRequestFactory(new StatelessRequestFactory()); client.setErrorHandler(new ResponseErrorHandler() { // Pass errors through in response entity for status code analysis @Override// w ww.j a v a 2s .c o m public boolean hasError(ClientHttpResponse response) throws IOException { return false; } @Override public void handleError(ClientHttpResponse response) throws IOException { } }); return client; }
From source file:org.springframework.boot.test.web.client.TestRestTemplateTests.java
private void verifyRelativeUriHandling(TestRestTemplateCallback callback) throws IOException { ClientHttpRequestFactory requestFactory = mock(ClientHttpRequestFactory.class); MockClientHttpRequest request = new MockClientHttpRequest(); request.setResponse(new MockClientHttpResponse(new byte[0], HttpStatus.OK)); URI absoluteUri = URI.create("http://localhost:8080/a/b/c.txt?param=%7Bsomething%7D"); given(requestFactory.createRequest(eq(absoluteUri), (HttpMethod) any())).willReturn(request); RestTemplate delegate = new RestTemplate(); TestRestTemplate template = new TestRestTemplate(delegate); delegate.setRequestFactory(requestFactory); LocalHostUriTemplateHandler uriTemplateHandler = new LocalHostUriTemplateHandler(new MockEnvironment()); template.setUriTemplateHandler(uriTemplateHandler); callback.doWithTestRestTemplate(template, URI.create("/a/b/c.txt?param=%7Bsomething%7D")); verify(requestFactory).createRequest(eq(absoluteUri), (HttpMethod) any()); }
From source file:org.cloudfoundry.identity.batch.integration.ServerRunning.java
public RestTemplate createRestTemplate() { RestTemplate client = new RestTemplate(); client.setRequestFactory(new HttpComponentsClientHttpRequestFactory() { @Override/*from www . j a v a2 s. c o m*/ public HttpClient getHttpClient() { HttpClient client = super.getHttpClient(); client.getParams().setBooleanParameter(ClientPNames.HANDLE_REDIRECTS, false); client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.IGNORE_COOKIES); return client; } }); client.setErrorHandler(new ResponseErrorHandler() { // Pass errors through in response entity for status code analysis public boolean hasError(ClientHttpResponse response) throws IOException { return false; } public void handleError(ClientHttpResponse response) throws IOException { } }); return client; }
From source file:org.apigw.authserver.ServerRunning.java
public RestTemplate getRestTemplate() { RestTemplate client = new RestTemplate(); client.setRequestFactory(new HttpComponentsClientHttpRequestFactory() { @Override/*from w w w .j ava 2 s . c o m*/ public HttpClient getHttpClient() { HttpClient client = super.getHttpClient(); client.getParams().setBooleanParameter(ClientPNames.HANDLE_REDIRECTS, false); client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.IGNORE_COOKIES); return client; } }); client.setErrorHandler(new ResponseErrorHandler() { // Pass errors through in response entity for status code analysis public boolean hasError(ClientHttpResponse response) throws IOException { return false; } public void handleError(ClientHttpResponse response) throws IOException { } }); return client; }
From source file:org.cruk.genologics.api.GenologicsAPIPaginatedBatchTest.java
@Test public void testMultipageFetchListSome() throws Exception { // Note - reusing the files from above means that the subsequent pages // with have "&projectname=Run+1030" as part of the URL. This can be ignored // for this test. // Part one - mock the rest template to return the already parsed objects. RestOperations restMock = EasyMock.createStrictMock(RestOperations.class); EasyMock.expect(restMock.getForEntity("http://lims.cri.camres.org:8080/api/v2/samples?start-index=0", Samples.class)).andReturn(response1).once(); EasyMock.expect(restMock.getForEntity( new URI("http://lims.cri.camres.org:8080/api/v2/samples?start-index=500&projectname=Run+1030"), Samples.class)).andReturn(response2).once(); // Should get as far as response 3 in this test. GenologicsAPIImpl localApi = context.getBean("genologicsAPI", GenologicsAPIImpl.class); localApi.setRestClient(restMock);/*from w ww .j a v a2s.c o m*/ localApi.setServer(new URL("http://lims.cri.camres.org:8080")); EasyMock.replay(restMock); List<LimsLink<Sample>> links = localApi.listSome(Sample.class, 0, 750); EasyMock.verify(restMock); assertEquals("Expected 750 sample links returned", 750, links.size()); // Part two - mock the HTTP client and request factory to ensure that the URIs are // being presented as expected without character cludging. HttpContext httpContext = HttpClientContext.create(); HttpClient mockHttpClient = EasyMock.createMock(HttpClient.class); ClientHttpRequestFactory mockRequestFactory = EasyMock.createMock(ClientHttpRequestFactory.class); RestTemplate restTemplate = context.getBean("genologicsRestTemplate", RestTemplate.class); restTemplate.setRequestFactory(mockRequestFactory); localApi.setHttpClient(mockHttpClient); localApi.setRestClient(restTemplate); URI pageOne = new URI("http://lims.cri.camres.org:8080/api/v2/samples?start-index=0"); URI pageTwo = new URI( "http://lims.cri.camres.org:8080/api/v2/samples?start-index=500&projectname=Run+1030"); HttpGet getOne = new HttpGet(pageOne); HttpGet getTwo = new HttpGet(pageTwo); HttpResponse responseOne = createMultipageFetchResponse(pageFiles[0]); HttpResponse responseTwo = createMultipageFetchResponse(pageFiles[1]); Class<?> requestClass = Class.forName("org.springframework.http.client.HttpComponentsClientHttpRequest"); Constructor<?> constructor = requestClass.getDeclaredConstructor(HttpClient.class, HttpUriRequest.class, HttpContext.class); constructor.setAccessible(true); ClientHttpRequest reqOne = (ClientHttpRequest) constructor.newInstance(mockHttpClient, getOne, httpContext); ClientHttpRequest reqTwo = (ClientHttpRequest) constructor.newInstance(mockHttpClient, getTwo, httpContext); EasyMock.expect(mockRequestFactory.createRequest(pageOne, HttpMethod.GET)).andReturn(reqOne).once(); EasyMock.expect(mockRequestFactory.createRequest(pageTwo, HttpMethod.GET)).andReturn(reqTwo).once(); EasyMock.expect(mockHttpClient.execute(getOne, httpContext)).andReturn(responseOne).once(); EasyMock.expect(mockHttpClient.execute(getTwo, httpContext)).andReturn(responseTwo).once(); EasyMock.replay(mockHttpClient, mockRequestFactory); links = localApi.listSome(Sample.class, 0, 750); EasyMock.verify(mockHttpClient, mockRequestFactory); assertEquals("Expected 750 sample links returned", 750, links.size()); }
From source file:se.vgregion.alfrescoclient.service.AlfrescoService.java
/** * Initialises the RestTemplate.//w w w.j a v a 2 s .c o m * * @return the RestTemplate */ private RestTemplate initJsonRestTemplate() { RestTemplate template = new RestTemplate(); CommonsClientHttpRequestFactory requestFactory = new CommonsClientHttpRequestFactory(); final int timeout = 5000; // Five seconds requestFactory.setReadTimeout(timeout); template.setRequestFactory(requestFactory); HttpMessageConverter<?>[] httpMessageConverters = new HttpMessageConverter<?>[] { new MappingJacksonHttpMessageConverter() }; template.setMessageConverters(Arrays.asList(httpMessageConverters)); return template; }
From source file:org.cruk.genologics.api.GenologicsAPIPaginatedBatchTest.java
@Test public void testMultipageFetchFind() throws Exception { // Part one - mock the rest template to return the already parsed objects. RestOperations restMock = EasyMock.createStrictMock(RestOperations.class); EasyMock.expect(restMock.getForEntity("http://lims.cri.camres.org:8080/api/v2/samples?projectname=Run 1030", Samples.class)).andReturn(response1).once(); EasyMock.expect(restMock.getForEntity( new URI("http://lims.cri.camres.org:8080/api/v2/samples?start-index=500&projectname=Run+1030"), Samples.class)).andReturn(response2).once(); EasyMock.expect(restMock.getForEntity( new URI("http://lims.cri.camres.org:8080/api/v2/samples?start-index=1000&projectname=Run+1030"), Samples.class)).andReturn(response3).once(); GenologicsAPIImpl localApi = context.getBean("genologicsAPI", GenologicsAPIImpl.class); localApi.setRestClient(restMock);//from www .j a v a2 s. com localApi.setServer(new URL("http://lims.cri.camres.org:8080")); EasyMock.replay(restMock); Map<String, Object> terms = new HashMap<String, Object>(); terms.put("projectname", "Run 1030"); List<LimsLink<Sample>> links = localApi.find(terms, Sample.class); EasyMock.verify(restMock); assertEquals("Expected 1150 sample links returned", 1150, links.size()); // Part two - mock the HTTP client and request factory to ensure that the URIs are // being presented as expected without character cludging. HttpContext httpContext = HttpClientContext.create(); HttpClient mockHttpClient = EasyMock.createMock(HttpClient.class); AuthenticatingClientHttpRequestFactory mockRequestFactory = EasyMock .createMock(AuthenticatingClientHttpRequestFactory.class); RestTemplate restTemplate = context.getBean("genologicsRestTemplate", RestTemplate.class); restTemplate.setRequestFactory(mockRequestFactory); localApi.setHttpClient(mockHttpClient); localApi.setRestClient(restTemplate); URI pageOne = new URI("http://lims.cri.camres.org:8080/api/v2/samples?projectname=Run%201030"); URI pageTwo = new URI( "http://lims.cri.camres.org:8080/api/v2/samples?start-index=500&projectname=Run+1030"); URI pageThree = new URI( "http://lims.cri.camres.org:8080/api/v2/samples?start-index=1000&projectname=Run+1030"); HttpGet getOne = new HttpGet(pageOne); HttpGet getTwo = new HttpGet(pageOne); HttpGet getThree = new HttpGet(pageOne); HttpResponse responseOne = createMultipageFetchResponse(pageFiles[0]); HttpResponse responseTwo = createMultipageFetchResponse(pageFiles[1]); HttpResponse responseThree = createMultipageFetchResponse(pageFiles[2]); Class<?> requestClass = Class.forName("org.springframework.http.client.HttpComponentsClientHttpRequest"); Constructor<?> constructor = requestClass.getDeclaredConstructor(HttpClient.class, HttpUriRequest.class, HttpContext.class); constructor.setAccessible(true); ClientHttpRequest reqOne = (ClientHttpRequest) constructor.newInstance(mockHttpClient, getOne, httpContext); ClientHttpRequest reqTwo = (ClientHttpRequest) constructor.newInstance(mockHttpClient, getTwo, httpContext); ClientHttpRequest reqThree = (ClientHttpRequest) constructor.newInstance(mockHttpClient, getThree, httpContext); EasyMock.expect(mockRequestFactory.createRequest(pageOne, HttpMethod.GET)).andReturn(reqOne).once(); EasyMock.expect(mockRequestFactory.createRequest(pageTwo, HttpMethod.GET)).andReturn(reqTwo).once(); EasyMock.expect(mockRequestFactory.createRequest(pageThree, HttpMethod.GET)).andReturn(reqThree).once(); EasyMock.expect(mockHttpClient.execute(getOne, httpContext)).andReturn(responseOne).once(); EasyMock.expect(mockHttpClient.execute(getTwo, httpContext)).andReturn(responseTwo).once(); EasyMock.expect(mockHttpClient.execute(getThree, httpContext)).andReturn(responseThree).once(); EasyMock.replay(mockHttpClient, mockRequestFactory); links = localApi.find(terms, Sample.class); EasyMock.verify(mockHttpClient, mockRequestFactory); assertEquals("Expected 1150 sample links returned", 1150, links.size()); }
From source file:org.venice.piazza.servicecontroller.Application.java
@Bean public RestTemplate restTemplate() { RestTemplate restTemplate = new RestTemplate(); HttpClient httpClient = HttpClientBuilder.create().setMaxConnTotal(httpMaxTotal) .setMaxConnPerRoute(httpMaxRoute).build(); HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient); factory.setReadTimeout(httpRequestTimeout * 1000); factory.setConnectTimeout(httpRequestTimeout * 1000); restTemplate.setRequestFactory(factory); return restTemplate; }
From source file:org.cloudfoundry.caldecott.client.HttpTunnelFactory.java
private RestTemplate createRestTemplate() { RestTemplate restTemplate = new RestTemplate(); CommonsClientHttpRequestFactory requestFactory = new CommonsClientHttpRequestFactory(); requestFactory.setConnectTimeout(TIMEOUT); requestFactory.setReadTimeout(TIMEOUT); if (httpProxyConfiguration != null) { requestFactory.getHttpClient().getHostConfiguration().setProxy(httpProxyConfiguration.getProxyHost(), httpProxyConfiguration.getProxyPort()); }/*from w w w .j av a2s .c o m*/ restTemplate.setRequestFactory(requestFactory); return restTemplate; }