Undertow启动报Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used

undertow 设置一下buffer pool,不然他就使用默认,启动时会出现警告 配置 @Component public class CustomizationBeanHandler implements WebServerFactoryCustomizer<UndertowServletWebServerFactory> { @Override public void customize(UndertowServletWebServerFactory factory) { factory.addDeploymentInfoCustomi. 阅读详情
AI摘要

本文介绍如何通过配置自定义缓冲池解决Spring Boot项目中启动Undertow时出现的WebSocket警告问题。

问题:Buffer pool was not set on WebSocketDeploymentInfo

我的项目实用SpringBoot2.4.9,Undertow使用的也是2.4.9,启动时,控制台出现以下警告提示:
WARN main io.undertow.websockets.jsr UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used

在这里插入图片描述

问题解决

添加以下配置类代码:

import io.undertow.server.DefaultByteBufferPool;
import io.undertow.websockets.jsr.WebSocketDeploymentInfo;
import org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory;
import org.springframework.boot.web.server.WebServerFactoryCustomizer;
import org.springframework.stereotype.Component;

/**
 * @author: 
 * @date: 2022-12-16 17:38
 * @description: 解决启动io.undertow.websockets.jsr UT026010: Buffer pool was not
 *   set on WebSocketDeploymentInfo, the default pool will be used的警告
 */
@Component
public class CustomizationBean implements WebServerFactoryCustomizer<UndertowServletWebServerFactory> {
    @Override
    public void customize(UndertowServletWebServerFactory factory) {
        factory.addDeploymentInfoCustomizers(deploymentInfo -> {
            WebSocketDeploymentInfo webSocketDeploymentInfo = new WebSocketDeploymentInfo();
            webSocketDeploymentInfo.setBuffers(new DefaultByteBufferPool(false, 1024));
            deploymentInfo.addServletContextAttribute("io.undertow.websockets.jsr.WebSocketDeploymentInfo", webSocketDeploymentInfo);
        });
    }
}

以上代码相当于给容器设置了默认的1024的Buffer pool ,完成后启动则不再报之前的警告提示。

Spring(21) 在 Spring Boot 中使用 Undertow 作为嵌入式服务器 阅读详情

相关推荐

常用的集成TTL门电路

本篇主要分析了常用的逻辑门电路与非门,详细分析了电源原理。值得收藏。

ManagerUser的博客 5086

Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used

以上代码相当于给容器设置了默认的1024的Buffer pool ,完成后启动则不再报之前的警告提示。

爱吃Java的羊的博客 1318

从零开始:kohya_ss环境部署与LoRA/SDXL模型训练实战指南

本文提供了一份详细的kohya_ss环境部署与模型训练实战指南。从零开始,手把手教你使用Conda创建虚拟环境、安装依赖并启动Web GUI界面。核心内容涵盖高质量数据集的准备方法,并重点解析了如何使用kohya_ss工具进行LoRA模型和SDXL模型的微调训练,包括关键参数配置与常见报错解决方案,帮助初学者快速上手AI绘画模型定制。

weixin_29162439的博客 534

微服务: Seata AT 分布式事务配置出现异常解决(相当全面)(下篇)

异常分类如下所示: 1. no available service 'null' found, please make sure registry *** 2.Could not create connection to database 3.no available service 'default' found 4.Buffer pool was not set on *, the default pool will be... 5. seata at undo_log数据不删除解决方案

pingzhuyan的博客 2418

以高通camera 申请ion内存看dma-buf

1 fd 与ion buffer, file绑定 简单总结就是申请一个buffer,再创建一个dmabuf 结构体然后将,然后将dmabuf中得指针指向buffer,dmabuf 再传递给一个匿名的inode,获取到一个file,这样file和dmabuf绑定起来,也就和buffer关联上。然后再从进程中分配一个空闲的fd,将fd 和file囊绑定。这样就能通过fd 快速查找到buffer。file 是个全系统的,他和进程无关,但是fd 是每个进程都是自己独立的,所以再跨进程传输时只需要保证fd ...

兔兔里个花兔的博客 6443

duilib 之 事件--bubbled冒泡事件应用、通用点击事件、进入离开事件、XML样式中直接添加事件

1. box 绑定点击事件 ui::Box *pSmallVideoBox = (ui::Box*)FindControl(L"rightBox"); if (pSmallVideoBox) { auto SwitchVideo = [this](ui::EventArgs* param){ m_bSecScreenIsScale = m_bMainScre...

目前打算换一个工作,有招聘windows c++方向的也欢迎联系,北京、济南 最好 972

IDEA启动项目正常,但是java -jar启动失败

IDEA中可以正常启动项目,但是使用java -jar 无法正常启动

weixin_62094610的博客 2971

ROS & ROS2 机器人深度相机激光雷达多传感器标定工具箱入门教程(一)

multisensor_calibration 是一个积极维护的通用标定工具箱,用于辅助基于目标的多传感器标定,支持 ROS 1 和 ROS 2。它提供了多种方法和应用来标定复杂的多传感器系统,例如。

2506_90492529的博客 3260

undertow警告Buffer pool was not set on WebSocketDeploymentInfo

看提示让你设置一下buffer pool,不然他就使用默认的 这个警告不影响使用,但是看着别扭,于是 根据官方文档,和源码,自定义配置 官方文档地址: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-programmatic-embedded-container-customization @Component public class CustomizationBean implemen

weixin_45132335的博客 1494

69页完整版智慧港口综合解决方案

智慧港口需求4港机远程操控等自动化改造需求自动化码头AGV无线通信及专用视频系统需求安全生产视频监控类需求港机RCMS及设备管理需求岸边智能理货码头三维全景应用智慧港口解决方案5自动化码头AGV/跨运车/无人集卡无线接入港机远控视觉及冗余无线通信视觉集卡防吊起系统集装箱码头岸边智能理货港机RCMS系统无线接入港机智能化管理(无线高清视频监控、一键报警、远程抄表系统)港口拖轮无线接入岸边溢油监测系统TD-LTE覆盖及业务终端接入港口生产管理系统港口可视化集群调度港口GiNMS综合网络设备智能管理全球作业效率最

zuoan1993的博客 2128

Pandas滚动窗口的妙用:动态计算列数据的最大值

Pandas的滚动窗口(rolling window)功能是数据分析中处理时间序列数据的重要工具。本文通过实例演示了如何使用rolling(window=4).max()计算DataFrame列A的滚动最大值,并将结果存入新列Max_Range。该方法会在4个元素的滑动窗口内计算最大值,前3行因数据不足显示为NaN。这种技术广泛应用于金融分析(如股价波动)、数据平滑和趋势识别等场景,能有效帮助分析数据的动态变化特征。示例展示了从数据准备到结果输出的完整流程,体现了Pandas在处理滑动窗口计算时的高效性和便

m0_74337424的博客 52

springboot切换使用undertow容器

序 最近稍微有点空闲,回头再来优化下基础框架,也是一种重新学习。今天主要写写跟大家分享下springboot使用undertow,废话不多说。 一、maven引入jar <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 默认是使用的tomcat --

zwrlj527的专栏 8702

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

SpringBoot3脚手架

SpringBoot3脚手架,基于SpringBoot3+Druid+PgSQL+MyBatisPlus3+FastJSON2+Lombok,启动web容器为Undertow(非默认tomcat),其他的请自行添加和配置。

★【World Of Moshow 郑锴】★ 2076

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

十二、springCloud链路跟踪

springCloud链路跟踪

RT_0114的博客 633

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Java 代码生成

如果你还在手动写初始化代码,那你已经落后别人一大截了. 1.由来 常规的代码生成方法,一般会在自身项目中写死生成模版,然后通过静态类生成.这样没什么不好,但在日常开发中,我们可能经手多个项目,而可能项目架构的风格不同,导致部分代码差异化(比如:引用的mapper不一样,或者持久层框架也不一样),这样一来又得复制一遍,如果别的同事修改了你的模版你,代码又开始冲突了.今天给大家推荐一块同学开发的代码生成工具,Gitee仓库地址(https://gitee.com/ccpengfh/pl-code-build.

你我无缘,全靠BUG 5632

python dictConfig封装自定义日志器(二)

之前写的自定义日志器存在不完善,现在进行自定义日志器优化: 读取yaml日志配置文件 更改日志配置路径 使用logging.config.dictConfig配置日志 获取Logger进行使用 代码展示 # version must be 1 # logger配置文件 #########################################logging yaml profile################################################## vers.

Holidayzz的博客 919

@EnableAutoConfiguration(exclude={MongoAutoConfiguration.class})

springboot 项目启动报错如下,分析是pom.xml中引入了mongdb的依赖,此时你可能不需要连接数据库,那么有两种解决方式: 1.在pom.xml中找到对应的依赖,去除掉 2.可以在启动类上通过禁用指定的自动化配置来避免加载不必要的自动化配置,例如: @EnableAutoConfiguration(exclude={MongoAutoConfiguration.class}) 2021-03-30 16:04:49.152 WARN 7864 --- [ ma

sinat_27818621的博客 2916

SpringBoot项目中使用Tomcat、Undertow、jetty等容器

SpringBoot中使用Tomcat、Undertow、jetty等容器;

Zhaof_Notes 1728

三分钟构建高性能WebSocket服务:SpringBoot整合Netty方案

本文详细介绍了一个基于Netty+SpringBoot的高性能WebSocket服务实现方案。核心优势包括:采用Netty的Reactor模型支持10万+并发连接;通过零拷贝和内存池优化实现低延迟;完善的分布式架构支持水平扩展;提供心跳检测、消息确认等可靠性保障机制。文章从架构设计、快速搭建、性能优化到高级特性实现等方面,系统性地阐述了WebSocket服务的开发全流程,包括连接管理、消息编解码、流量控制等关键技术点,并提供了容器化部署和Kubernetes配置方案,为构建高并发实时通信系统提供了完整参考。

油墨香^-^的博客 430

springboot3 集成websocket报错记录

排除掉了jetty和tomcat容器,项目依旧使用jetty启动,未使用undertow启动,serverContainer获取null值报错。WebSocket 支持:通过 WebSocketDeploymentInfo 配置 WebSocket 部署信息。容器属性设置:设置 Jakarta WebSocket 容器属性,确保 WebSocket 能够正常工作。三、WebSocketHandler。6.2 添加undertow配置类。二、websocket配置类。

A1161353306的博客 514

SpringBoot集成WebSocket问题记录 javax.websocket.DeploymentException: Multiple Endpoints may not be deploye

1.pom需要的包 dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-websocket&lt;/artifactId&gt; &lt;/dependency&gt; 2.springboot启动需要的配置,注...

qq_30495285的博客 2367

SpringBoot 整合undertow容器替换tomcat

Tomcat是Apache基金下的一个轻量级的Servlet容器,支持Servlet和JSP。Tomcat具有Web服务器特有的功能,包括 Tomcat管理和控制平台、安全局管理和Tomcat阀等。但是,Tomcat和ApacheHTTP服务器不是一个东西,ApacheHTTP服务器是用C语言实现的HTTP Web服务器。Tomcat是完全免费的,深受开发者的喜爱。Undertow是Red Hat公司的开源产品, 它完全采用Java语言开发,是一款灵活的高性能Web服务器,

一千个读者就有一千个哈姆雷特 1130

C3P0连接池配置

C3P0是一个开源的JDBC连接池。 在Spring中,C3P0的一些配置,介绍如下(只列了一部分,不是全部)

caihaijiang的专栏 10万+
上一篇: Idea2020中Maven依赖成功但启动时报依赖找不到
下一篇: undertow服务配置多端口监听
蓝色格子
博客等级 码龄9年 129粉丝 174原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值