Web.xml:url-pattern 标签彼此相关吗?

2024-03-02

   <servlet-mapping>
      <servlet-name>myName</servlet-name>
      <url-pattern>/aName</url-pattern>
   </servlet-mapping>

    <security-constraint>

            <web-resource-collection>

                    ...

                    <url-pattern>
                            /*
                    </url-pattern>

            </web-resource-collection>

             ...

    </security-constraint>

这是 web.xml 的摘录(使用它来配置 jboss/tomcat web 服务)。只是想知道是否url-pattern in web-resource-collection是相对于url-pattern in servlet-mapping.


The url-pattern用于选择给定请求的约束与任何事物无关。 Servlet 规范中有趣的部分是:

SRV.12.8.3 处理请求

当 Servlet 容器接收到 请求,应使用算法 SRV.11.1 中描述的选择 上定义的约束(如果有)url-pattern这是最好的匹配 请求 URI。如果没有任何约束 选择后,容器应接受 的请求。否则容器 应确定 HTTP 方法是否 该请求被限制在 选定的图案。如果不是,则 请求应被接受。否则, 该请求必须满足 适用于的约束条件http-methodurl-pattern。两者都 必须满足以下规则 请求被接受以及 分派到关联的 servlet。

And:

SRV.11.1 URL 路径的使用

收到客户端请求后,Web 容器确定 Web 应用程序 将其转发到的位置。所选的 Web 应用程序必须具有最长的 与请求 URL 开头匹配的上下文路径。 URL 的匹配部分 是映射到 servlet 时的上下文路径。

接下来,Web 容器必须使用 Servlet 来处理请求 下面描述的路径映射过程.

用于映射到 servlet 的路径是请求中的请求 URL 对象减去上下文路径和路径参数。 URL路径映射 以下规则按顺序使用。第一个成功的匹配将被使用,不再继续 尝试的比赛:

  1. 容器将尝试找到与请求路径完全匹配的 Servlet 的路径。成功的匹配将选择 servlet。
  2. 容器将递归地尝试匹配最长的路径前缀。这个做完了 通过使用“/”字符一次沿着路径树向下移动一个目录 路径分隔符。最长的匹配决定选择的 servlet。
  3. 如果 URL 路径中的最后一段包含扩展名(例如 .jsp),servlet 容器将尝试匹配处理扩展名请求的 servlet。 扩展被定义为最后一个“.”字符之后的最后一个段的部分 角色。
  4. 如果前三个规则都没有导致 Servlet 匹配,则容器将 尝试提供适合所请求资源的内容。如果是“默认” servlet是为应用程序定义的,它将被使用。

SRV.11.2 映射规范

在Web应用程序部署描述符中,使用以下语法来定义 映射:

  • 使用以“/”字符开头并以“/*”后缀结尾的字符串 用于路径映射。
  • 以“*.”前缀开头的字符串用作扩展映射。
  • 仅包含“/”字符的字符串表示“默认”servlet 应用程序。在这种情况下,Servlet 路径是请求 URI 减去上下文路径,并且路径信息为空。
  • 所有其他字符串仅用于精确匹配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Web.xml:url-pattern 标签彼此相关吗? 的相关文章

  • 如何找到 AS3 中 xml 子级的数量

    所以现场文档说这是在 XML 对象上调用 length 对于 XML 对象 此方法始终 返回整数 1 length XMLList 类的方法返回一个 对于 XMLList 对象 值为 1 仅包含一个值 我在 xml 上调用它 如下所示
  • 如何将 XML 转换为 OCI-Lob 对象?

    我有一个 XML 如下
  • 如何替换 XSLT 1 中的多个文本子字符串

    对于 XSLT 1 0 XSLT 2 0 的正则表达式方法通常不可用 是否有任何非正则表达式方法可以替换源 xml 文档中节点中的多个字段 例如转换
  • LINQ to XML - 如何正确使用 XDocument

    现在我首先要说的是 这确实是一项任务 然而 在我遇到 Linq to XML 语法之前 我几乎已经完成了它 我有 2 个课程 曲目和 CD 现在作为作业的一部分 我创建了一张 CD 然后向其中添加了一些曲目 在搜索了大量完美解释了如何从 x
  • XML 文档结构必须在同一实体内开始和结束

    我是 eclipse 的新手 我刚刚开始编写一些代码 实际上只是从网站复制并粘贴 谁能帮我解决这个问题 错误出现在最后一行
  • 如何使用 Java 1.4 和 SAX 将任意数据编码为 XML?

    我们使用 SAX 来解析 XML 因为它不需要将整个 XML 文档读入内存来解析单个值 我读过很多文章 坚持认为 SAX 只能用于解析 解码 XML 而不能创建它 这是真的 不 这不是真的 您可以使用类似于以下内容的方式将 XML 编码为
  • 如何用Classic asp解析xml?

    你好 我需要用 Classic asp 解析 xml 这是 XML
  • 如何使用 RSA-SHA1 算法对 xml 元素进行签名?

    我需要使用 RSA SHA1 算法签署 并最终验证 XML 文档的节点之一 w3 org 链接 https www w3 org TR xmlsec algorithms RSA SHA1 网址 http www w3 org 2000 0
  • XML - XSLT 转换 - 生成特殊的“”标签

    我正在转换一些 XML 数据以适合格式为 Excel XML Spreadsheet 2003 的文档 一切正常 但我在生成结果文件的正确标头时遇到问题 它基本上应该是以下形式
  • 如何更改特定元素的 XML 命名空间

    我有一些通过某些 WCF 消息的 xmlserialization 生成的 xml 集 现在我想创建一个通用方法 在其中提供 xml 文件名和前缀 例如mailxml12 然后在 xml 文件中 那些名称中没有任何命名空间前缀的元素应替换为
  • tomcat 7.0.50 java websocket 实现给出 404 错误

    我正在尝试使用 Java Websocket API 1 0 JSR 356 中指定的带注释端点在 tomcat 7 0 50 上实现 websocket 以下是我如何对其进行编码的简要步骤 1 使用 ServerEndpoint注解编写w
  • 通过 post 使用 php 发送 XML

    我知道有很多类似的问题 但我尝试过摆弄所有的解决方案 但似乎无法使其发挥作用 我正在尝试将 xml 直接发布到 Web 服务并获得响应 从技术上讲 我正在尝试连接到freightquote com 您可以在右上角找到该文档this http
  • SSRS ReportViewer 与 XML 嵌入数据源相关的问题

    我有 C WPF 应用程序 我想在 ReportViewer 控件中显示 SSRS 报告 本地报告文件中嵌入了 XML 数据源 从 SQL Server Business Intelligence Development Studio 运行
  • 从标签中提取 HTML5 数据属性

    我想从标签中提取所有 HTML5 数据属性 就像这个 jQuery 插件 http www orangesoda net jquery dataset html 例如 给定 span class highlight Joe Bloggs s
  • web.xml 中的多个安全约束不起作用

    我正在升级一个 Web 应用程序 Servlet 3 0 Tomcat 7 它的大部分页面都需要基本身份验证 该应用程序具有一小组监视 servlet 其中任何一个都不应该受到保护 在我的web xml 我目前有以下内容security c
  • 如何在 xslt 2.0 中获取与此场景相关的特定 XML 元素索引?

    我想使用 XSLT2 0 将一个 xml 转换为另一个 xml 在这样做时 我想找到一些与我在此处解释的场景相关的 XML 元素索引 这是 XML 文档
  • xpath 根据子值选择父级

    我希望选择状态为 实时 的每个活动 我在 Drupal 的 XPath XML 解析器中使用它 并具有上下文基本查询和 xpath 查询字段 上下文 这是基本查询 所有其他查询都将在此上下文中运行 我目前有 语境 event status
  • 使用 XSLT 转换 XML 并保留 CDATA(在 Ruby 中)

    我正在尝试将包含如下内容的文档转换为另一个文档 使 CDATA 与第一个文档中的完全相同 但我还没有弄清楚如何使用 XSLT 保留 CDATA 初始 XML
  • JaxB2Marshaller 未将 XML 绑定到 Kotlin 数据类

    我正在编写一个批处理作业来解析 XML 提取字段并将它们保存在数据库中 解析 XML 时 它会选取 2 个根元素 但将所有字段保留为空 因此在我的数据库中 我有 2 条记录将为空字段 似乎无法弄清楚为什么它无法读取元素 TIA Bean f
  • 在 Tomcat 中触发内部 ServletRequest

    我正在使用 Quartz 来安排 Web 应用程序的后台任务 其中一些任务只是针对同一 Web 应用程序发出请求 我想避免依赖于任何类型的网络设置 例如 如果从数据中心内发出带有我自己域名的请求 则可能无法正确路由 是否有一个 Java A

随机推荐