全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
批量计算

常见问题

更新时间:2017-06-07 13:26:11

1. web系统中 stopJob 和 startJob 报错如何解决

错误内容大约如下:

ContentLengthDoesNotMatch: Specified content-length is not matched with the length of body.

原因

这个是因为JDK中sun.net.www.protocol.http.HttpURLConnection这个类有个安全开关allowRestrictedHeaders,是否禁止设置Content-Length,而我们的SDK中需要设置Content-Length。

这个开关是private final static的,在该类的static块中初始化,一旦加载该类就初始化,一旦初始化后就无法改变。

解决方法

需要在sun.net.www.protocol.http.HttpURLConnection这个类加载前设置以下的property。

System.setProperty("sun.net.http.allowRestrictedHeaders", "true");

最好是在 web.xml 中配置一个 listener,在listener的static block中设置这个Property,web服务启动时就生效。

本文导读目录