【发布时间】:2017-08-05 17:19:59
【问题描述】:
我有一个节点,其中包含大量存储为 jcr:data 属性的文本。我可以通过这个groovy 代码从中读取并在控制台中显示它:
InputStream content = node.getNode("jcr:content").getProperty("jcr:data")
.getStream()
println(content.text) //it shows me its content = text
现在我想更改此文本中的一些字符并将其重新设置为jcr:data 属性。我试着做:
ValueFactory factory = session.getValueFactory()
InputStream is = new ByteArrayInputStream(Charset.forName("UTF-8")
.encode(content.text.replaceAll("xx", "yy").array())
Binary binary = factory.createBinary(is)
Value value = factory.createValue(binary)
node.setProperty("jcr:data", value)
但这会引发错误:
unexpected token: Binary
【问题讨论】: