Downgrade to Jackson 2.7.6 and verify Elasticsearch’s compatibility
Closes gh-6508
This commit is contained in:
		
							parent
							
								
									0e1ca846c5
								
							
						
					
					
						commit
						ec9549f01f
					
				| 
						 | 
				
			
			@ -16,20 +16,30 @@
 | 
			
		|||
 | 
			
		||||
package org.springframework.boot.autoconfigure.elasticsearch.jest;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
import com.google.gson.Gson;
 | 
			
		||||
import io.searchbox.client.JestClient;
 | 
			
		||||
import io.searchbox.client.http.JestHttpClient;
 | 
			
		||||
import io.searchbox.core.Index;
 | 
			
		||||
import io.searchbox.core.Search;
 | 
			
		||||
import org.elasticsearch.index.query.QueryBuilders;
 | 
			
		||||
import org.elasticsearch.search.builder.SearchSourceBuilder;
 | 
			
		||||
import org.junit.After;
 | 
			
		||||
import org.junit.Rule;
 | 
			
		||||
import org.junit.Test;
 | 
			
		||||
import org.junit.rules.ExpectedException;
 | 
			
		||||
 | 
			
		||||
import org.springframework.beans.factory.BeanCreationException;
 | 
			
		||||
import org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchAutoConfiguration;
 | 
			
		||||
import org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration;
 | 
			
		||||
import org.springframework.boot.test.util.EnvironmentTestUtils;
 | 
			
		||||
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
 | 
			
		||||
import org.springframework.context.annotation.Bean;
 | 
			
		||||
import org.springframework.context.annotation.Configuration;
 | 
			
		||||
import org.springframework.util.SocketUtils;
 | 
			
		||||
 | 
			
		||||
import static org.assertj.core.api.Assertions.assertThat;
 | 
			
		||||
import static org.mockito.Mockito.mock;
 | 
			
		||||
| 
						 | 
				
			
			@ -38,6 +48,7 @@ import static org.mockito.Mockito.mock;
 | 
			
		|||
 * Tests for {@link JestAutoConfiguration}.
 | 
			
		||||
 *
 | 
			
		||||
 * @author Stephane Nicoll
 | 
			
		||||
 * @author Andy Wilkinson
 | 
			
		||||
 */
 | 
			
		||||
public class JestAutoConfigurationTests {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -61,7 +72,8 @@ public class JestAutoConfigurationTests {
 | 
			
		|||
 | 
			
		||||
	@Test
 | 
			
		||||
	public void customJestClient() {
 | 
			
		||||
		load(CustomJestClient.class, "spring.elasticsearch.jest.uris=http://localhost:9200");
 | 
			
		||||
		load(CustomJestClient.class,
 | 
			
		||||
				"spring.elasticsearch.jest.uris=http://localhost:9200");
 | 
			
		||||
		assertThat(this.context.getBeansOfType(JestClient.class)).hasSize(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -80,6 +92,25 @@ public class JestAutoConfigurationTests {
 | 
			
		|||
				"spring.elasticsearch.jest.proxy.host=proxy.example.com");
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Test
 | 
			
		||||
	public void jestCanCommunicateWithElasticsearchInstance() throws IOException {
 | 
			
		||||
		int port = SocketUtils.findAvailableTcpPort();
 | 
			
		||||
		load(ElasticsearchAutoConfiguration.class,
 | 
			
		||||
				"spring.data.elasticsearch.properties.path.home:target/elastic",
 | 
			
		||||
				"spring.data.elasticsearch.properties.http.enabled:true",
 | 
			
		||||
				"spring.data.elasticsearch.properties.http.port:" + port,
 | 
			
		||||
				"spring.elasticsearch.jest.uris:http://localhost:" + port);
 | 
			
		||||
		JestClient client = this.context.getBean(JestClient.class);
 | 
			
		||||
		Map<String, String> source = new HashMap<String, String>();
 | 
			
		||||
		source.put("a", "alpha");
 | 
			
		||||
		source.put("b", "bravo");
 | 
			
		||||
		Index index = new Index.Builder(source).index("foo").type("bar").build();
 | 
			
		||||
		client.execute(index);
 | 
			
		||||
		SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
 | 
			
		||||
		searchSourceBuilder.query(QueryBuilders.matchQuery("a", "alpha"));
 | 
			
		||||
		assertThat(client.execute(new Search.Builder(searchSourceBuilder.toString())
 | 
			
		||||
				.addIndex("foo").build()).getResponseCode()).isEqualTo(200);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	private void load(String... environment) {
 | 
			
		||||
		load(null, environment);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -93,7 +93,7 @@
 | 
			
		|||
		<httpclient.version>4.5.2</httpclient.version>
 | 
			
		||||
		<httpcore.version>4.4.5</httpcore.version>
 | 
			
		||||
		<infinispan.version>8.2.2.Final</infinispan.version>
 | 
			
		||||
		<jackson.version>2.8.1</jackson.version>
 | 
			
		||||
		<jackson.version>2.7.6</jackson.version>
 | 
			
		||||
		<janino.version>2.7.8</janino.version>
 | 
			
		||||
		<javassist.version>3.20.0-GA</javassist.version> <!-- Same as Hibernate -->
 | 
			
		||||
		<javax-cache.version>1.0.0</javax-cache.version>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue