java - 响应创建elasticsearch来自文件的响应期间出错

标签 java unit-testing elasticsearch groovy

我尝试从文件创建响应以测试Elasticsearch服务

    def "FounderHint"() {
        setup:
        URL url = getClass().getClassLoader().getResource("elastic_response/elastic-founders-hint-response.json")
        SearchResponse response = new SearchResponse().readFrom(url.openStream())  // this is a 40 line error

        when: "we ask for hint"
        elasticClient.search(any()) >> response
        metrics.measureHintSearchTime(_) >> response

        then: "we get list of ObjectHint"
        List<ObjectHint> result = advancedSearchFilter.founderHint("але").collect(Collectors.toList())

        result[0].inn == "323500905646"
        result[0].name == "Алешина Екатерина Леонидовна"
但我得到错误-
No signature of method: org.elasticsearch.action.search.SearchResponse.readFrom() is applicable for argument types: (java.io.BufferedInputStream) values: [java.io.BufferedInputStream@19f135ca]
Possible solutions: readFrom(org.elasticsearch.common.io.stream.StreamInput), readFrom(org.elasticsearch.common.io.stream.StreamInput), readFrom(org.elasticsearch.common.io.stream.StreamInput)
groovy.lang.MissingMethodException: No signature of method: org.elasticsearch.action.search.SearchResponse.readFrom() is applicable for argument types: (java.io.BufferedInputStream) values: [java.io.BufferedInputStream@19f135ca]
Possible solutions: readFrom(org.elasticsearch.common.io.stream.StreamInput), readFrom(org.elasticsearch.common.io.stream.StreamInput), readFrom(org.elasticsearch.common.io.stream.StreamInput)
    at ru.esphere.informator.refbook.retriever.hint.SearchExternalHintServiceTest.test external hint method for receive correct result(SearchExternalHintServiceTest.groovy:40)
SearchResponse是Elasticsearch类,它没有 setter ,是否有其他方法可以创建响应,或者我在哪里出错?

最佳答案

    BufferedInputStream stream = url.openStream()
    SearchResponse response = new SearchResponse().readFrom(new StreamInput(stream))
将第一行的BufferedInputStream转换为StreamInput,然后再将其传递给readFrom

关于java - 响应创建elasticsearch来自文件的响应期间出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63777416/

相关文章:

elasticsearch - "Fan-out"索引策略

python - 如何在数百个 Excel 报告之上构建 Web 界面

elasticsearch - 如何使用Elasticsearch过滤查询结果

Java/Eclipse 依赖关系映射/绘图工具 - 我的项目中在哪里使用了 JAR?

reactjs - React 中的单元测试入口文件

java - 带有服务的Grails规范测试

angularjs - 依赖注入(inject)在 angular/browserify/karma/jasmine 单元测试中不起作用

java - Gradle 依赖排除不适用于传递依赖

java - 如何放置一个 ignoreCase

java - 如何使用Annotation创建转换器?