使用DocumentMetadataHandle和InputStreamHandle进行读写

时间:2017-07-25 12:07:56

标签: marklogic

尝试从一个位置读取文档并写入其他位置。使用DocumentMetadataHandle获取元数据,使用InputStreamHandle读取内容。对于写入时,我使用相同的InputStreamHandle,我用于读取抛出流关闭异常。当我在阅读中不使用DocumentMetadataHandle时,情况也不会发生。编码如下。使用Java Client API 3.0.7

XMLDocumentManager documentManager = client.newXMLDocumentManager();
Transaction transaction = client.openTransaction();
InputStreamHandle handle = new InputStreamHandle();
DocumentMetadataHandle metadataHandle = new DocumentMetadataHandle();
documentManager.read(uri, metadataHandle, handle,transaction);
documentManager.write(newUri, metadataHandle, handle, transaction);

1 个答案:

答案 0 :(得分:1)

如果要将文档缓冲在内存中以便写回服务器,可以考虑使用BytesHandle而不是InputStreamHandle。

DocumentMetadataHandle会缓冲元数据。