我必须使用远程SOAP Web服务,其中一些字段是字符串,在许多情况下包括重音符号(áéíóú),因为它是西班牙文本。
发生的事情是,当这些字符串的字母带有重音时,“null”会附加到字符串的开头。我得到的字符串与字符串一样多。例如:
<tag_x>nullme gusta esa canción</tag_x> (1 accent - 1 null)
<tag_y>nullnullnullmás información sobre la posición</tag_y> (3 accents - 3 nulls)
<tag_z>sin acentos</tag_z> (no accents - no nulls)
最让我感到困惑的是,我正在从两台不同的计算机上使用SOAP Web服务,而且我在一个案例中得到空值而在另一个案例中没有。
我构建请求,发送请求,当我收到响应时,立即打印它。在一个环境中,我得到了空值,其中一个我没有。在这两种情况下,我们都使用Java 1.6,axis2来生成存根...我完全不知道可能导致这种情况的原因。
有什么想法吗?
答案 0 :(得分:0)
使用网络监视器查看两个响应在到达客户端soap堆栈之前是否相同。
如果您使用Eclipse,则可以使用它的内置TCP/IP monitor来查看网络连接上的原始数据流。
如果答案在较低级别上有所不同,请对网络服务提供商进行谴责,以显示您的证据。 如果不是,请羞辱你。 ; - )