如何在model.json文件中表达方案(Https),这是为了连接到Elasticsearch?
以下是model.js文件:
{
"version": "1.0",
"defaultSchema": "elasticsearch",
"schemas": [
{
"type": "custom",
"name": "elasticsearch",
"factory": "org.apache.calcite.adapter.elasticsearch.ElasticsearchSchemaFactory",
"operand": {
"coordinates": "{'127.0.0.1': 9200}",
"index": "myIndex",
"useConig": "{}"
}
}
]
}在下面的JAVA代码中,我尝试连接到Elasticsearch:
Connection conn = DriverManager.getConnection("jdbc:calcite:", properties);
calciteConnection = conn.unwrap(CalciteConnection.class);
String elasticSchema = Resources.toString(somefile.class.getResource("/model.json"), Charset.defaultCharset());
new ModelHandler(calciteConnection, "inline:" + elasticSchema);
String sql = “select field1 from table1”
statement2 = calciteConnection.prepareStatement(sql);
ResultSet set = statement2.executeQuery();get a connection closed异常,我可以在日志中看到它正在尝试连接到http,而不是https(需要)。我应该在模型文件的什么地方提到https?
发布于 2019-07-07 03:49:10
Calcite的Elasticsearch适配器目前不支持通过HTTPS进行连接。我建议你在Calcite's JIRA上开一个问题。或者更好的是,自己贡献必要的代码更改:)
https://stackoverflow.com/questions/56894588
复制相似问题