簡體   English   中英

如何在 Spring-Boot 中注冊啟用了“異步支持”的 servlet?

[英]How to register a servlet with enabled "async-supported" in Spring-Boot?

我打算將我的舊應用程序遷移到 Spring-Boot。
我想停止使用 web.xml 描述符並注冊舊的純 Servlet(啟用“異步支持”)和關聯的 ServletContextListener。

Spring Boot 會自動將應用程序上下文中的任何Servlet bean 注冊到 servlet 容器。 默認情況下, async supported 設置為true因此除了為Servlet創建 bean 之外,您無事可做。

如果出於某種原因,您想對 servlet 的注冊進行更多控制,那么,與其將 Servlet 本身作為 bean 公開,您還可以將其包裝在ServletRegistrationBean

將 @EnableAsync 放在您的應用程序類上。 請參閱此處了解更多詳情。

servletRegistrationBean.isAsyncSupported()默認為true ,它決定是否支持異步功能。

在此處輸入圖片說明 .

如果您遇到以下問題,請點擊鏈接

java.lang.IllegalArgumentException:必須在 servlet 和異步請求處理中涉及的所有過濾器上啟用異步支持。 這是使用 Servlet API 在 Java 代碼中完成的,或者通過向 web.xml 中的 servlet 和過濾器聲明添加“true”來完成。 您還必須使用 Servlet 3.0+ 容器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM