微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTTP400:GET 请求不适用于 Wildfly 18,但适用于 JBoss 7

如何解决HTTP400:GET 请求不适用于 Wildfly 18,但适用于 JBoss 7

最近我从 Jboss 7.1.1 升级到 Wildfly 18.0.0。 在野蝇上跑我的耳朵时,以下网址不起作用

http://localhost:8080/xxx-yyy/contract/subPeriodBlockingPairsAction.do?target=prepareSubPeriodBlockPairs&contractIdSubPeriodId=416|837

但是相同的 url 可以在 JBoss 7.1.1 上工作。

该应用程序是基于 struts 的。目标方法具有以下语法-

 public ActionForward prepareSubPeriodBlockPairs(final ActionMapping mapping,final ActionForm form,final ActionErrors validationErrors,final HttpServletRequest request,final HttpServletResponse response)

我尝试放置调试点,但在 Wildfly 上调试时从未达到。

但在 JBoss 上调试时到达。

解决方法

Wildfly 18.0 无法识别管道运算符。

还有'|'根据 HTTP 的 RFC1738 规范,(管道)字符是不安全的。

因此此处必须使用 url encoding 来解决该问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。