我有一个试图从Java调用的web服务。服务的XSD将字段定义为xsd:base64Binary。我正在使用maven插件来生成jaxb2工件。该字段将成为所生成的Java对象中的byte[]。该字段中返回的数据可以是CSV数据,也可以是XML数据,具体取决于传递给服务的内容。SoapUI完美地显示了数据(未编码)。使用wireshark查看线路时,我还可以看到未编码的数据。我的问题是,如何在Java中以字符串形式获取这些数据?我想获取这些数据,然后将其写入一个文件。
响应如下所示:服务协议、间隔开始时间、间隔结束时间、数量、度量单位...等。
XSD的相关位:
生成的java的相关位:
protected byte[] greenDoc;
在我的客户java代码中,我尝试了新字符串(byte[])、新字符串(byte[]、字符集)、Base64解码等各种可能的组合,但似乎无法正确获取数据。我知道这不是web服务的限制,因为就像我说的,SoapUI可以完美地显示数据。
关于客户端代码如何获取字节数组并转换为字符串,有什么建议吗?谢谢!
发布于 2014-11-06 05:05:15
以编程方式,您可以使用DatatypeConverter
https://stackoverflow.com/questions/26767034
复制相似问题