有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在aem中将文本内容保存为jcr:data属性?

我有一个包含大量文本的节点,这些文本存储为它的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

共 (1) 个答案

  1. # 1 楼答案

    你记得导入javax吗。jcr。二进制

    Esit:前面缺少一个括号。数组()