java.lang.IllegalArgumentException:Servlet 映射中的 <url-pattern> 无效
-
09-06-2019 - |
题
<servlet>
<servlet-name>myservlet</servlet-name>
<servlet-class>workflow.WDispatcher</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>myservlet</servlet-name>
<url-pattern>*NEXTEVENT*</url-pattern>
</servlet-mapping>
上面是 Tomcat 的片段 web.xml
. 。网址模式 *NEXTEVENT*
启动时抛出
java.lang.IllegalArgumentException:Servlet 映射中的 <url-pattern> 无效
如果有人能提示该错误,我们将不胜感激。
解决方案
<url-pattern>*NEXTEVENT*</url-pattern>
URL 模式无效。它可以以星号结尾,也可以以星号开头(表示文件扩展名映射)。
url 模式规范:
- 以'/'字符开始并以'/*'后缀结尾的字符串用于路径映射。
- 以“*”开头的字符串前缀用作扩展映射。
- 仅包含“/”字符的字符串表示应用程序的“默认” servlet。在这种情况下,servlet路径是请求URI减去上下文路径,路径信息为空。
- 所有其他字符串仅用于精确匹配。
参见第 12.2 节 Java Servlet 规范 版本 3.1 了解更多详细信息。
其他提示
可以实现这一点的解决方法是添加 servlet 过滤器来进行 URL 重写,例如改写 下一个活动 到/下一个活动/(NEXTEVENT 之前的那个)/(NEXTEVENT 之后的那个)或类似的东西。
不隶属于 StackOverflow