Java Apache Axis在创建Soap请求时无法处理代理项对

Java Apache Axis在创建Soap请求时无法处理代理项对,java,unicode,utf-8,axis,utf-16,Java,Unicode,Utf 8,Axis,Utf 16,我们编写了一个Java程序来接收JSON并向另一个后端发送SoapRequest 我的理解是,一旦程序接收到传入的JSON(UTF-8),它将被编码为UTF-16 Java字符串(默认值) 我们正在使用的ApacheAxis库将这些UTF-16 Java字符串转换回UTF-8,在发送到后端之前创建一个XML。每当我发送一个4字节的表情符号(:grin:)UTF-8字符时,它就会失败。我发现任何UTF-8 4字节字符都将在UTF-16中表示为代理项对。我怀疑在这种情况下,Axis解析器无法理解代理

我们编写了一个Java程序来接收JSON并向另一个后端发送SoapRequest

我的理解是,一旦程序接收到传入的JSON(UTF-8),它将被编码为UTF-16 Java字符串(默认值)

我们正在使用的ApacheAxis库将这些UTF-16 Java字符串转换回UTF-8,在发送到后端之前创建一个XML。每当我发送一个4字节的表情符号(:grin:)UTF-8字符时,它就会失败。我发现任何UTF-8 4字节字符都将在UTF-16中表示为代理项对。我怀疑在这种情况下,Axis解析器无法理解代理项对,也无法转换为有效的UTF-8编码

以前有人见过这样的东西吗? 我有这个链接,它说的是类似的东西。