使用Java REST服务处理传入的可重复的XmlInlineBinaryData元素

时间:2016-06-30 14:36:49

标签: java rest jaxb jersey

我目前正在使用JAXB生成的类来反映我收到的REST请求的模式,该模式可能包含Base 64编码的二进制数据元素。

我收到的有效载荷是这样的:

<?xml version="1.0" encoding="utf-8"?> <ProcessRequest> <DeliveryDate>2015-12-13</DeliveryDate>  <AttachmentBinary>iVBORw0KGgoAAAANSUhEUgAAAFoA</AttachmentBinary> <AttachmentBinary>iVBORw0KGgoAAAANSUhEUgAAAFoA</AttachmentBinary> </ProcessRequest>

我正在使用Jersey REST API实现我的解决方案,并且最初只假设一个元素。

我是否正确理解JAXB允许我使用XmlElementWrapper接受重复元素?

我最大的挑战是将其流式传输到磁盘,因为它包含大型图像文件,我不希望将其保存在内存中。 有没有一种有效的方法来设置输入流并将每个元素写入单独的文件?我可能需要先将它写入磁盘,访问几个字节以确定其文件类型然后重命名(或者找到一种方法来实现这一点)

提前致谢

0 个答案:

没有答案