java.io.IOException: Server returned HTTP response code: 411 for URL: http://upas.d.com/upas/......

最近项目升版本,遇到一些问题,写出来分享一下:

第一,pom.xml文件中版本的信息已经改了,但是在编译打包的时候,还有以前的版本信息,观察Dependency Hierarchy,发现别的包依赖以前的版本信息,在pom.xml中强行转化成新版本:


但是改过后,以前的版本信息还是存在,百思不得其解,后来找同事帮忙解决,才发现我这个MavenWeb项目,在WEB-INF下,有一个lib文件下,下面有jar包的信息,问题就出在这里,删掉jar包,以前的版本在发布的时候就不会被引入:


第二,项目编译发布后,因为是web项目,网页可以正常访问,但在本地远程调用时,却报如下错误:


411错误码的意思是:需要有效长度, 服务器不接受不含有效内容长度标头字段的请求

官方解释:The server refuses to accept the request without a defined Content- Length. The client MAY repeat the request if it adds a valid Content-Length header field containing the length of the message-body in the request message.

网上大多推荐的方法:


我的项目中通过HessianProxyFactory来远程调用,并不能在请求头中设置一个Content-Length=0

后来,发现是我的hessian版本过低,为3.1.5,把hessian版本升级为4.0.38,解决问题

猜你喜欢

转载自blog.csdn.net/zouxucong/article/details/79459452