10.2. 将现有 Undertow 处理程序用于部署

Undertow 提供了一组默认的处理程序,可用于部署到 JBoss EAP 的任何应用。

要将处理程序与部署搭配使用,您需要添加 WEB-INF/undertow-handlers.conf 文件。

示例: WEB-INF/undertow-handlers.conf 文件

allowed-methods(methods='GET')

所有处理程序也可以取一个可选 predicate 来在特定情况下应用该处理程序。

示例:使用可选 Predicate 的 WEB-INF/undertow-handlers.conf 文件

path('/my-path') -> allowed-methods(methods='GET')

上例将仅将 allowed-methods 处理程序应用到路径 /my-path

Undertow Handler 默认参数

些处理程序具有 default 参数,允许您在处理程序定义中指定该参数的值,而不使用名称。

示例: 使用默认参数的 WEB-INF/undertow-handlers.conf 文件

path('/a') -> redirect('/b')

您还可以更新 WEB-INF/jboss-web.xml 文件,使其包含一个或多个处理程序的定义,但首选使用 WEB-INF/undertow-handlers.conf

示例: WEB-INF/jboss-web.xml 文件

<jboss-web>
    <http-handler>
        <class-name>io.undertow.server.handlers.AllowedMethodsHandler</class-name>
        <param>
            <param-name>methods</param-name>
            <param-value>GET</param-value>
        </param>
    </http-handler>
</jboss-web>

提供的 Undertow 处理程序的完整列表可在 Provided Undertow Handlers 参考中找到。