我试图用Spring Boot和弹性搜索设置一个应用程序。这个应用程序已经使用Spring Data JPA存储库来持久化我的实体。当我试图在启用弹性搜索配置的情况下运行应用程序时,我遇到的问题是,当存储库被扫描时,我得到了一个异常。
我得到了以下例外:
Caused by: java.lang.IllegalArgumentException: Unable to obtain mapping metadata for int!
我的存储库的定义如下:
@Repository
public interface AdminUserRepository extends PagingAndSortingRepository<AdminUser, Long> {
/**
* Returns an AdminUser that match the email specified by parameter.
* @param email AdminUser email.
* @return An AdminUser instance.
*/
AdminUser findByEmail(final String email);
/**
* Returns an AdminUser that match the email and business name specified by parameter.
* @param email AdminUser email.
* @param businessName Business Name.
* @return number of matching instances.
*/
int countByEmailAndBusinessName(final String email, final String businessName);
}
异常似乎是由于count查询的签名导致的,该签名返回一个int。尽管这个存储库可以很好地处理JPA,但它会抛出一个异常,从而启用弹性搜索。
我想知道存储库中的返回类型是否有任何限制,或者我的配置中是否缺少某些内容。
我的Java配置类:
@Configuration
@EnableElasticsearchRepositories
public class ElasticSearchConfig {
}
谢谢
对于计数
Spring数据使用长
非int
。尝试更改应该有效的方法类型。
这里是参考文档:http://docs.spring.io/autorepo/docs/spring-data-elasticsearch/2.0.2.RELEASE/reference/html/#repositories.core-concepts
看起来Spring Data Elasticsearch正在寻找一个用于Spring Data JPA的存储库。在同一个应用程序中使用多个Spring数据模块时,应该将存储库放在单独的包中,然后在@Enable
注释。
例如:
@Configuration
@EnableElasticsearchRepositories("com.foo.elasticsearch")
@EnableJpaRepositories("com.foo.jpa")
public class MyConfiguration {
}
这应该连接到我的elasticsearch 7.6.2版本 当我运行我的empy应用程序时,我得到这个错误。
我刚刚用ElasticSearch编写了一个小的Spring Boot应用程序。到目前为止效果很好。 我的main()类:代码正常工作,没有错误消息。但正如我所说,ElasticSearch的REST API是不可用的。netstat中未列出开放端口:
断路器将处于闭合或半断开状态无限时间,直到达到最小的呼叫次数,对吗?有什么办法我可以设置什么时候没有调用在数量的时间,它将转为关闭状态?另外,在半开状态下,是否有可能使最小呼叫数大于允许的呼叫数?谢谢。
升级到Spring boot 2.3和Spring data elasticsearch 4.0.9后的问题。我有这样的文档: 这在spring data 3.0中与Jackson配合得很好,但升级到4.0后,Jackson不再可用,现在我收到了一个来自spring的实例化异常,无法实例化URL对象。 例外情况: 任何关于解决方案的想法都将受到赞赏。
我在AWS Elastic Beanstalk上部署了一个Spring Boot应用程序。我正面临502严重网关错误。我从日志中找不到任何有用的东西 /var/log/nginx/error。日志 2019/02/10 02:12:54[错误]3257#0:*1连接()失败(111:连接被拒绝),连接到上游时,客户端:。。。。,服务器:,请求:“GET/HTTP/1.1”,上游:http://12
当我执行ps-aef grep elasticsearch HeapDumpOnOutOfMemoryError时看到了这一点 501 373 47 1 0 2:29pm ttys004 0:04.14/usr/bin/Java-xms4g-xmx4g-xss256k-djava.awt.headless=true-xx:+useparnewgc-xx:+useparnewgc-xx:+usepa