首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法构造`org.apache.drill.exec.server.rest.QueryWrapper`实例

无法构造`org.apache.drill.exec.server.rest.QueryWrapper`实例
EN

Stack Overflow用户
提问于 2019-03-12 10:27:19
回答 1查看 75关注 0票数 0

我在嵌入式模式下运行Apache钻取程序。

当我向localhost:8047/query.json发送POST请求时,它会产生400个错误:

代码语言:javascript
复制
Cannot construct instance of `org.apache.drill.exec.server.rest.QueryWrapper`, problem: null
 at [Source: (org.glassfish.jersey.message.internal.EntityInputStream); line: 4, column: 1]

请求:

代码语言:javascript
复制
{
    "QueryType": "SQL",
    "Query": "SELECT count(*) as `cnt` FROM  dfs.`/data/demo/Parquet/*.parquet`"
}

Content-Type: application/json

在分布式模式下运行时,也会发生这种情况。通过网络界面运行查询似乎没问题.

根据google的说法,我是唯一一个有这个错误的人。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-12 10:27:19

请求中有一个愚蠢的错误。请求中的字段必须位于camelCase中,而不是QueryType,而是queryType。由于序列化程序设置错误,以前的请求中有大写Q。

我有一个小时没有注意到这个细节。

这样做是可行的:

代码语言:javascript
复制
{
    "queryType": "SQL",
    "query": "SELECT count(*) as `cnt` FROM  dfs.`/data/demo/Parquet/*.parquet`"
}

如果API返回一个正常的错误,比如"queryType是缺少的“,而不是神秘的Cannot construct instance of org.apache.drill.exec.server.rest.QueryWrapper,那就太好了。

希望这能为一个人节省一小时的生命。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55119223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档