0

我需要通过期望 a作为参数的 setEntity(...) 方法将 a 设置ByteArrayRequestEntity为对象上的实体。通过 Netbeans 提示,我将 as 转换为,但我不确定为什么这是允许的。是一个接口,我不确定它是否实现了该接口的所有方法(或者是否需要)。任何人都可以澄清这是一个允许的铸造吗?HttpPostHttpEntityByteArrayRequestEntityHttpEntityHttpEntityByteArrayRequestEntity

4

2 回答 2

0

您不能将 ByteArrayRequestEntity 转换为 HttpEntity,但您应该能够从中创建一个:

new ByteArrayRequestEntity(yourEntity.getContent())

真正的问题是您正在混合库。ByteArrayRequestEntity来自过时的HttpClient 3.x 库,而HttpEntity来自新的HttpComponents 库,因此它们不直接兼容。如果可能,您应该将所有内容都切换到 HttpComponents。

于 2014-08-19T15:51:50.680 回答
-2

做一些调查并没有什么坏处,对吧?

根据Apache HTTP Components文档,ByteArrayRequestEntity实现接口RequestEntity,而不是HttpEntity

于 2014-08-19T14:53:17.210 回答