我在 glassfish 3.1.2 生产服务器上遇到问题。我部署了一个 Jersey REST 项目,当任何 URL的路径参数中存在“空格”时,它会抛出 URISyntaxException。例如,如果我点击这个 URL:http://MyDomain:8080/MyApp/MyVersion/MyService/MyPathParam/My%20Path%20param
Jersey throwsjava.lang.IllegalArgumentException
with root cause java.net.URISyntaxException: Illegal character in path at index 155: http://MyDomain:8080/MyApp/MyVersion/MyService/MyPathParam/My Path param
查询参数不会发生错误。此问题在测试环境中不可重现。生产 glassfish 是否有可能在 Jersey 获取路径参数并且 jersey 抛出上述异常之前解码它们?我浏览了这个链接,它指定 glassfish 可以在请求参数到达我们的应用程序之前对其进行解码,但我没有得到明确的想法。请帮助我摆脱这个问题。