17.5. 配置 Servlet 容器

servlet 容器提供所有 servlet、Jakarta 服务器页面和 websocket 相关配置,包括会话相关的配置。虽然大多数服务器只需要一个 servlet 容器,但可以通过添加额外的 servlet -container 元素来配置多个 servlet 容器。拥有多个 servlet 容器可以实现以下行为:允许将多个部署部署到不同虚拟主机上的同一上下文路径。

注意

servlet 容器 中提供的大部分配置可以被使用 web.xml 文件部署的应用单独覆盖。

JBoss EAP 默认提供一个 servlet 容器:

默认 Undertow 子系统配置

<subsystem xmlns="urn:jboss:domain:undertow:10.0">
  <buffer-cache name="default"/>
  <server name="default-server">
    ...
  </server>
  <servlet-container name="default">
      <jsp-config/>
      <websockets/>
  </servlet-container>
...
</subsystem>

以下示例演示了如何使用管理 CLI 配置 servlet 容器。您还可以通过导航到 ConfigurationSubsystemsWeb(Undertow)Servlet Container,使用管理控制台配置 servlet 容器。

更新现有 Servlet 容器

更新现有的 servlet 容器:

/subsystem=undertow/servlet-container=default:write-attribute(name=ignore-flush,value=true)
reload

创建新 Servlet 容器

创建新的 servlet 容器:

/subsystem=undertow/servlet-container=new-servlet-container:add
reload

删除 Servlet 容器

删除 servlet 容器:

/subsystem=undertow/servlet-container=new-servlet-container:remove
reload

有关可用于配置 servlet 容器的属性的完整列表,请参阅 Undertow Subsystem Attributes 部分。