# TransportClient in scala

**URL:** <https://discuss.elastic.co/t/transportclient-in-scala/69246>\
**Category:** Elasticsearch\
**Created:** [December 16, 2016, 6:35am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246 "2016-12-16T06:35:37Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![ddpaimon](https://avatars.discourse-cdn.com/v4/letter/d/e19b73/32.png) [@ddpaimon](https://discuss.elastic.co/u/ddpaimon)\
**Post date:** [December 16, 2016, 6:35am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/1 "2016-12-16T06:35:37Z")

</div>

How to create transport client in Scala for Elasticsearch 5.1.1 version?

I try to create class extends on abstract class TransportClient named PreBuiltTransportClient (like in docs).

`class PreBuiltTransportClient(settings: Settings) extends TransportClient(settings, new util.ArrayList[Class[_ <: Plugin]])`

But Idea tell me that it can't resolve constructor.

If i try this:

`class PreBuiltTransportClient(settings: Settings) extends TransportClient(settings, List().asJava)`

I catch an exception with null type

---

<div class="post-metadata">

**Author:** ![wanglifengwf](https://avatars.discourse-cdn.com/v4/letter/w/41988e/32.png) [@wanglifengwf](https://discuss.elastic.co/u/wanglifengwf)\
**Post date:** [December 16, 2016, 6:47am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/2 "2016-12-16T06:47:35Z")

</div>

you can use java client instead!

---

<div class="post-metadata">

**Author:** ![ddpaimon](https://avatars.discourse-cdn.com/v4/letter/d/e19b73/32.png) [@ddpaimon](https://discuss.elastic.co/u/ddpaimon)\
**Post date:** [December 16, 2016, 6:50am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/3 "2016-12-16T06:50:15Z")

</div>

But I have project on scala, and need scala client for Elasticsearch. I can create client for Elasticsearch 2.x version, but can't for last version. I need a help 😥

---

<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 16, 2016, 7:41am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/4 "2016-12-16T07:41:32Z")

</div>

What is the problem?

---

<div class="post-metadata">

**Author:** ![ddpaimon](https://avatars.discourse-cdn.com/v4/letter/d/e19b73/32.png) [@ddpaimon](https://discuss.elastic.co/u/ddpaimon)\
**Post date:** [December 16, 2016, 7:50am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/5 "2016-12-16T07:50:21Z")

</div>

I try to create class extends on abstract class TransportClient named PreBuiltTransportClient (like in docs).

`class PreBuiltTransportClient(settings: Settings) extends TransportClient(settings, new util.ArrayList[Class[_ <: Plugin]])`  
But Idea tell me that it can't resolve constructor.

---

<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 16, 2016, 8:02am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/6 "2016-12-16T08:02:25Z")

</div>

Can't you use the provided `PreBuiltTransportClient` class directly?  
It's provided in this artifact:

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

```

---

<div class="post-metadata">

**Author:** ![ddpaimon](https://avatars.discourse-cdn.com/v4/letter/d/e19b73/32.png) [@ddpaimon](https://discuss.elastic.co/u/ddpaimon)\
**Post date:** [December 16, 2016, 8:19am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/7 "2016-12-16T08:19:38Z")

</div>

Thanks it works. 😌. Really works)

---

<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 13, 2017, 8:20am UTC](https://discuss.elastic.co/t/transportclient-in-scala/69246/8 "2017-01-13T08:20:00Z")

</div>

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