如何在JCR 2中正确将inputStream读入节点属性?

4
在 JCR 1 中,你可以这样做:
final InputStream in = zip.getInputStream(zip.getEntry(zipEntryName));
node.setProperty(JcrConstants.JCR_CONTENT, in);

但是在JCR 2中,这已经被弃用了,详见http://www.day.com/maven/jsr170/javadocs/jcr-2.0/javax/jcr/Node.html#setProperty%28java.lang.String,%20java.io.InputStream%29。这意味着我应该使用node.setProperty(String, Binary),但我不知道如何将我的inputStream转换为Binary。请问有没有文档或示例代码可供参考?
2个回答

7
ValueFactory.createBinary(InputStream stream)

您可以通过 Repository.login() 返回的 Session 获取 ValueFactory。


2

在Rob的回答后,我想给出一个提示,如果你不知道从哪里获取ValueFactory,可以使用以下代码:

node.getSession().getValueFactory().createBinary(inputStream)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接