簡體   English   中英

為什么我的elasticsearch無法在JAVA API中構建transportclient?

[英]Why my elasticsearch failed to build transportclient in JAVA API?

我在Java中有一個簡單的彈性搜索代碼,如下所示:

public class TryElastic {

public static void main(String[] args) throws UnknownHostException {

    Map<String, Object> json = new HashMap<String, Object>();
    json.put("user","kimchy");
    json.put("postDate",new Date());
    json.put("message","trying out Elasticsearch");

    try {
        Settings settings = Settings.settingsBuilder()
            .put("cluster.name", "elasticsearch")
            .put("client.transport.sniff", true).build();

        TransportClient client = TransportClient.builder().settings(settings).build();
        //client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
    } catch (NoNodeAvailableException e) {
        System.out.println(e.toString());
    }

    System.out.println("test");
}

}

這很簡單,但我在以下行中出錯:

TransportClient client = TransportClient.builder().settings(settings).build();

它顯示如下錯誤消息:

Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:113)
at org.elasticsearch.node.internal.InternalSettingsPreparer.randomNodeName(InternalSettingsPreparer.java:198)
at org.elasticsearch.node.internal.InternalSettingsPreparer.finalizeSettings(InternalSettingsPreparer.java:177)
at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareSettings(InternalSettingsPreparer.java:64)
at org.elasticsearch.client.transport.TransportClient$Builder.build(TransportClient.java:119)
at TryElastic.main(TryElastic.java:64)

所以,你能給我一些建議嗎,我一直在尋找解決方案,但我找不到。 有沒有我要實現的配置? 我的elasticsearch服務器已正確運行,它可以執行索引並從命令提示符獲取查詢。 謝謝...

這段代碼適合我。 這是版本問題。 TransportClient的默認端口是9300,代碼不能使用Elasticsearch 2.0進行編譯

使用這個

設置設置= Settings.settingsBuilder()。output(“cluster.name”,clusterName).build();

客戶端客戶端= TransportClient.builder()。settings(settings).build()。addTransportAddress(new InetSocketTransportAddress(new InetSocketAddress(“127.0.0.1”,9300)));

參考: 這是鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM