我正在使用第三方应用程序,该应用程序使用 restlet.org 的库将 restful url 映射到 spring bean。它生成以下模式以匹配一个非常简单的 url:
url 模式 - /api/0/full/{action}/{paramsJSON}
生成的正则表达式模式
/api/0/preauthfull/((?:[a-zA-Z\d\-\.\_\~\!\$\&\'\(\)\*\+\,\;\=\:\@]|(?:\%[\dABCDEFabcdef][\dABCDEFabcdef]))+)/((?:[a-zA-Z\d\-\.\_\~\!\$\&\'\(\)\*\+\,\;\=\:\@]|(?:\%[\dABCDEFabcdef][\dABCDEFabcdef]))+)
一旦模式超过大约 220 个字符,它就会失败。有趣的是,这只在 tomcat 服务器环境中失败,而不是在码头,即使它们都使用相同的 jre 运行。我有点不知道如何纠正这个问题,正则表达式是由restlet动态构建的-