Java 是“内容类型”;text/xml;字符集=utf-8“;错了吗?

Java 是“内容类型”;text/xml;字符集=utf-8“;错了吗?,java,xml,scala,http,utf-8,Java,Xml,Scala,Http,Utf 8,我正在做一个HttpRequest,我指定的内容类型如下,但是我的高级开发人员的代码审查被拒绝了 val request = RequestBuilder.post .setUri(metaData("serviceUri")) .addHeader("Content-Type", "text/xml; charset=utf-8") .setEntity(input) .build 他

我正在做一个HttpRequest,我指定的内容类型如下,但是我的高级开发人员的代码审查被拒绝了

val request = RequestBuilder.post
      .setUri(metaData("serviceUri"))
      .addHeader("Content-Type", "text/xml; charset=utf-8")
      .setEntity(input)
      .build
他们提到的错误如下:

java.nio.charset.IllegalCharsetNameException: text/xml; charset=utf-8
但是,在本地计算机上运行代码时,我没有收到这些错误。 我错过什么了吗?
此外,我在许多地方上网查看,这被认为是正确的:“text/xml;charset=utf-8”

对不起,我不是专业人士,但如果我是专业人士,我会尝试以下方法:

-这样写字符集“UTF-8”(大写), -或者不在text/xml后面加“;”,只加“,”(逗号) -或者尝试使用setHeader选项


再说一次,我不是专业人士,这些都是我刚才在互联网上搜索到的关于你所犯错误的信息。我希望这些都能对你有所帮助

您已正确编写,但请尝试添加下面的代码

.setCharacterEncoding("UTF-8")
要显式设置编码


谢谢。

您尝试过UTF-8吗?您确定URL接受此格式吗?网络服务器呢?是的,我用UTF-8试过了,效果很好。此外,我还从服务器收到一个带有“text/xml;charset=utf-8”的响应。我认为这可能与编码标准有关。“java.nio.charset.IllegalCharsetNameException:text/xml;charset=utf-8”-我怀疑不知何故,整个字符串都试图用作字符集名称。我想说,错误不在你这边。在拒绝正确的代码之前,前辈们应该在调试上付出一些努力:(比将其标记为“scala”更清晰)?还有“val”本应是一个提示……但回到主题:我的建议是,如果前辈继续拒绝您的代码,并在与他们交谈后拒绝进入代码,您应该与您的经理联系。这会让您浪费时间去追踪一个没有bug的bug。您的内容类型字段绝对符合规范。bug存在于有效的代码中这在异常消息中非常明显。”像这样写字符集“UTF-8”(大写)”-没有区别,因为媒体类型参数不区分大小写;“而不是放”;“在text/xml之后,只放“,”(逗号)-在语法上是错误的。媒体类型与其参数之间仅用分号分隔,而参数之间也用分号分隔。