我试图在其中一个应用程序中使用@enablecouchbasehttpsession将会话存储在couchbase中。
@SpringBootApplication
@EnableCouchbaseHttpSession(keepStringAsLiteral = true)
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
couchbase coniguration@configuration@enablecouchbaserepositories@getter公共类couchbaseconfigurations扩展了abstractcouchbaseconfiguration{
@Value("${couchbase.connectionString}")
private String connectionString;
@Value("${couchbase.username}")
private String userName;
@Value("${couchbase.password}")
private String password;
@Value("${couchbase.bucket}")
private String bucketName;
}
使用的依赖项
<dependency>
<groupId>io.github.couchbaselabs</groupId>
<artifactId>spring-session-data-couchbase</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-couchbase</artifactId>
</dependency>
启动应用程序后,应用程序不会启动并出现错误
错误日志
启动tomcat上下文时出错。异常:org.springframework.beans.factory.unsatifieddependencyException。消息:创建在类路径资源[org/springframework/boot/autoconfigure/session/sessionrepositoryfilterconfiguration.class]中定义的名为“sessionrepositoryfilterregistration”的bean时出错:通过方法“sessionrepositoryfilterregistration”参数1表示的未满足的依赖关系;嵌套异常为org.springframework.beans.factory.unsatifieddependencyException:创建名为“springsessionrepositoryfilter”的bean时出错,该bean在org.springframework.session.data.couchbase.config.annotation.web.http.couchbasehttpsessionconfiguration:通过方法“springsessionrepositoryfilter”表示未满足的依赖关系参数0;嵌套异常为org.springframework.beans.factory.unsatifieddependencyException:创建名为“couchbasesessionrepository”的bean时出错,该bean在org.springframework.session.data.couchbase.config.annotation.web.http.couchbasehttpsessionconfiguration中定义:通过方法“couchbasesessionrepository”参数表示的未满足的依赖关系0; 嵌套异常为org.springframework.beans.factory.nosuchbeandefinitionexception:没有类型为“com.couchbase.client.java.bucket”的合格bean可用:至少需要1个符合autowire候选的bean。依赖项注解:{}
org.springframework.session.data.couchbase.config.annotation.web.http.couchbasehttpsessionconfiguration中方法couchbasesessionrepository的参数0需要找不到类型为“com.couchbase.client.java.bucket”的bean。操作:考虑在配置中定义一个类型为“com.couchbase.client.java.bucket”的bean。
1条答案
按热度按时间nbnkbykc1#
在应用程序中创建com.couchbase.client.java.bucket类型的bean从SpringBootVersion2.3.x及更高版本(SpringDatacouchbase 4+),bucket bean不再自动配置。
在pom.xml中添加“spring session data couchbase”依赖项。请参阅github、couchbase文档。
这将解决应用程序启动问题。
[期待进一步编辑]