标签: spring-session

有什么办法可以在Spring Session中一起启用2 HttpSessionStrategy?

我正在使用Spring Session进行会话管理。同时,我们的应用程序中有一些REST API,我们也想使用基于令牌的身份验证。

因此,我们想一起启用2 HttpSessionStrategy CookieHttpSessionStrategyHeaderHttpSessionStrategy。这样,我们的应用程序可以同时认证cookie和令牌。

spring-mvc spring-session

0
推荐指数
1
解决办法
1400
查看次数

Spring Boot 和 Spring Session:如何控制数据源

我正在一起试验 Spring Boot 和 Spring 会话,特别是使用 JDBC。

只需在 application.properties 中添加以下行:

spring.session.store-type=jdbc
Run Code Online (Sandbox Code Playgroud)

让它正常工作,这很好,因为我碰巧在该文件中也有一些数据源属性,即

myapp.datasource.url=jdbc:mysql://localhost/etc...
myapp.datasource.driver-class-name=com.mysql.jdbc.Driver
Run Code Online (Sandbox Code Playgroud)

但我实际上是通过自己的配置将它们用于我自己的数据源,如下所示:

@Configuration
@PropertySource("classpath:credentials.properties")
public class DataSourceConfig {

@Primary
@Bean(name = "dataSource")
@ConfigurationProperties(prefix = "myapp.datasource")
public DataSource dataSource() {
    return DataSourceBuilder.create().build();
}
}
Run Code Online (Sandbox Code Playgroud)

据我所知,Spring Session 正在创建自己的数据源,而不是使用我的数据源。有什么办法可以让它使用我的吗?(我的真实数据源有一些额外的配置,其中 Hikari 未在此处显示)

spring spring-boot spring-session

0
推荐指数
1
解决办法
3157
查看次数

如何处理sse连接关闭?

我有一个端点,如示例代码块中所示。流式传输时,我通过 调用异步方法streamHelper.getStreamSuspendCount()。我正在更改状态时停止此异步方法。但当浏览器关闭且会话终止时,我无法访问此异步方法。更改状态时,我将停止会话范围内的异步方法。但当浏览器关闭且会话终止时,我无法访问此异步方法。会话关闭时如何访问此范围?

@RequestMapping(value = "/stream/{columnId}/suspendCount", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
@ResponseBody
public Flux<Integer> suspendCount(@PathVariable String columnId) {
    ColumnObject columnObject = streamHelper.findColumnObjectInListById(columnId);
    return streamHelper.getStreamSuspendCount(columnObject);
}


getStreamSuspendCount(ColumnObject columnObject) {
   ...
   //async flux
   Flux<?> newFlux = beSubscribeFlow.get(i);
   Disposable disposable = newFlux.subscribe();
   beDisposeFlow.add(disposable); // my session scope variable. if change state, i will kill disposable (dispose()).
   ...
   return Flux.fromStream(Stream.generate(() -> columnObject.getPendingObject().size())).distinctUntilChanged()
                    .doOnNext(i -> {
                        System.out.println(i);
                    }));
}
Run Code Online (Sandbox Code Playgroud)

server-sent-events spring-boot project-reactor spring-session

0
推荐指数
1
解决办法
2759
查看次数

无法在 Vaadin 上使用 spring 会话

如果我将 spring-session jdbc 添加到我的 vaadin-spring-boot-application 应用程序非常慢,并且在几秒钟后重新加载整个页面。其他一切看起来都正常工作。

没注意到这个问题,研究了几天,得到了这个Github问题Vaadin微服务配置但是在这些中,我没有找到合适的解决方案来解决这个问题,任何人都可以给我一个真实的在 Vaadin 上实现Spring 会话的示例?

问候。

session vaadin spring-boot spring-session vaadin14

0
推荐指数
1
解决办法
194
查看次数