java.lang.IllegalArgumentException:无效的在servlet映射中
<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
的片段。 启动时的 URL 模式 *NEXTEVENT*
抛出异常
java.lang.IllegalArgumentException: 无效的
; 在servlet映射中
如果有人能提示该错误,我们将不胜感激。
<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>
Above is the snippet from Tomcat's web.xml
. The URL pattern *NEXTEVENT*
on start up throws
java.lang.IllegalArgumentException: Invalid <url-pattern> in servlet mapping
It will be greatly appreciated if someone can hint at the error.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
可以实现这一点的解决方法是添加 servlet 过滤器来进行 URL 重写,例如
将 NEXTEVENT 重写为 /NEXTEVENT/(NEXTEVENT 之前的那个)/(NEXTEVENT 之后的那个)或类似的内容。
A workaround that can achieve that is to add a servlet filter to do URL re-writes e.g.
re-write NEXTEVENT to /NEXTEVENT/(the one before the NEXTEVENT)/(the one after NEXTEVENT) or something similar.
URL 模式无效。 它可以以星号结尾,也可以以星号开头(表示文件扩展名映射)。
url 模式规范:
有关更多详细信息,请参阅 Java Servlet 规范 版本 3.1 的第 12.2 节。
The URL pattern is not valid. It can either end in an asterisk or start with one (to denote a file extension mapping).
The url-pattern specification:
See section 12.2 of the Java Servlet Specification Version 3.1 for more details.