# Elasticsearch java API\[5.0\] using problem

**URL:** <https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208>\
**Category:** Elasticsearch\
**Created:** [December 6, 2016, 7:07pm UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208 "2016-12-06T19:07:20Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 6, 2016, 7:07pm UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/1 "2016-12-06T19:07:20Z")

</div>

Hi ,  
I am very new to elasticsearch , I want to connect with elasticsearch engine using java API[5.0].  
Can anyone give the sample code for this.I tried googling but didn't find any full example which can help me regarding this .

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 6, 2016, 7:34pm UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/2 "2016-12-06T19:34:40Z")

</div>

Did you read [https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/index.html](https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/index.html)?

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 7:34am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/3 "2016-12-07T07:34:55Z")

</div>

Hi David i read that but didn't get enough information to connect to elasticsearch engine . i am using elasticsearch verion 5.0.2 and java api 5.0 . Please can i have one full sample program with proper imports statements .

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 7:48am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/4 "2016-12-07T07:48:50Z")

</div>

What did not work so far? I mean I can definitely copy and paste the guide here but it does not really make sense IMO.

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 7:54am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/5 "2016-12-07T07:54:50Z")

</div>

Hi David I am trying to connect with elastic search engine but not able to connect getting Null Pointer Exception.  
Below is my code sample for connecting may i know please where I am doing wrong i am very new to this doing POC for this and have to start implementation.

```
    public static TransportClient createTransportClient(){
    		TransportClient client=null;
    		try {
    			client=new PreBuiltTransportClient(Settings.EMPTY).addTransportAddress(new InetSocketTransportAddress(InetAddress.getLocalHost(), 9200));
    		}catch (Exception e){

    		}finally {
    			client.close();
    		}
    		return client;

    	}
 Exception in thread "main" java.lang.NullPointerException
```

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 8:11am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/6 "2016-12-07T08:11:14Z")

</div>

Please format your code using `</>` icon as explained in [this guide](https://discuss.elastic.co/t/about-the-elasticsearch-category/21). It will make your post more readable.

What is the stack trace?

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 8:19am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/7 "2016-12-07T08:19:57Z")

</div>

David waiting for your reply how can i initialize the TransportClinet as i mentioned in above post i am getting Null Pointer Exception and even i referred below links also but in these links they have given examples using old API version.  
[http://www.programcreek.com/java-api-examples/index.php?class=org.elasticsearch.client.transport.TransportClient&method=addTransportAddress](http://www.programcreek.com/java-api-examples/index.php?class=org.elasticsearch.client.transport.TransportClient&method=addTransportAddress)

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 8:22am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/8 "2016-12-07T08:22:00Z")

</div>

Ok. Let me copy and paste [the documentation](https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/transport-client.html):

```auto
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300));

```

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 8:28am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/9 "2016-12-07T08:28:16Z")

</div>

David thanks for immediate reply i tried that but unluckily didn't work for me .

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 8:32am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/10 "2016-12-07T08:32:16Z")

</div>

I can't help sorry. I don't have details I asked you for.  
Like a stack trace, an error message.

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 8:44am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/11 "2016-12-07T08:44:03Z")

</div>

David i have attached the code base in above post which i was writing for to create TransportClient .I am calling `createTransportClient()`method from `main()`and the stack trace is as below:

```
Exception in thread "main" java.lang.NullPointerException
	at com.SampleApplication.createTransportClient(SampleApplication.java:31)
	at com.SampleApplication.main(SampleApplication.java:18)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
```

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 9:00am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/12 "2016-12-07T09:00:05Z")

</div>

What do you have exactly at line 31 of `SampleApplication.java`?

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 9:28am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/13 "2016-12-07T09:28:02Z")

</div>

client.close(); at line no 31 inside finally block David

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 9:33am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/14 "2016-12-07T09:33:06Z")

</div>

so the `client` is `null` and has not been initialized.  
Probably because you are swallowing the Exception.

May be write something:

```java
try {
  client = new PreBuiltTransportClient(Settings.EMPTY)
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300));
 } catch (Exception e) {
  // Print your exception here. Important things are in it.
 } finally {
  if (client != null) {
    client.close();
  }
}

```

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 9:45am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/15 "2016-12-07T09:45:20Z")

</div>

Thanks David now I am getting below exception when i print it in catch block.

```
Exception in thread "main" java.lang.NoClassDefFoundError: org/elasticsearch/plugins/ActionPlugin
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at org.elasticsearch.transport.client.PreBuiltTransportClient.<clinit>(PreBuiltTransportClient.java:54)
	at com.tpgsi.cdr.SampleApplication.createTransportClient(SampleApplication.java:27)
	at com.tpgsi.cdr.SampleApplication.main(SampleApplication.java:18)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: java.lang.ClassNotFoundException: org.elasticsearch.plugins.ActionPlugin
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 20 more
```

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 10:13am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/16 "2016-12-07T10:13:02Z")

</div>

David my gradle dependency is as below:

```
dependencies {
	compile('org.springframework.boot:spring-boot-starter-data-elasticsearch')
	compile('org.springframework.boot:spring-boot-starter-data-mongodb')
	compile('org.springframework.boot:spring-boot-starter-web')
}
```

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [December 7, 2016, 10:24am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/17 "2016-12-07T10:24:19Z")

</div>

So you did not [import the following dependency](https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.0/_maven_repository.html)?

```auto
<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>transport</artifactId>
    <version>5.0.1</version>
</dependency>

```

BTW you are using spring-boot. Is it compatible with elasticsearch 5.0?

---

<div class="post-metadata">

**Author:** ![girish\_pathak](https://avatars.discourse-cdn.com/v4/letter/g/e9bcb4/32.png) [@girish\_pathak](https://discuss.elastic.co/u/girish_pathak)\
**Post date:** [December 7, 2016, 10:50am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/18 "2016-12-07T10:50:21Z")

</div>

Hi David you are right spring-boot is not compatible with 5.0 .  
Thanks a lot for helping now I am able to create TransportClient after adding `org.elasticsearch.client` dependency .

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [January 4, 2017, 10:50am UTC](https://discuss.elastic.co/t/elasticsearch-java-api-5-0-using-problem/68208/19 "2017-01-04T10:50:33Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
