Expand my Community achievements bar.

How to read XML file from DAM and place it in JCR?

Avatar

Level 1

Hi,

I have a requirement wherein i have to read xml file from dam and place that data under nodes in JCR.

Kindly help on this!

4 Replies

Avatar

Level 1

Arun,

Thanks,But this doc tells how to read xml file from our local/desktop.But my question is how from aem dam? Any api and how to use it.

Avatar

Community Advisor

Hi,

You can use Node API to read XML from DAM.

Example:

Node node = req.getResourceResolver().getResource(qs.toString()+"/jcr:content").adaptTo(Node.class);

InputStream in = node.getProperty("jcr:data").getBinary().getStream();

  BufferedReader reader = new BufferedReader(new InputStreamReader(in));

          StringBuilder out = new StringBuilder();

          String line;

          while ((line = reader.readLine()) != null) {

              out.append(line);

          }

          reader.close();

  log.debug("File DATA ==> " + out.toString());

aem63app-repo/ReadFileServlet.java at master · arunpatidar02/aem63app-repo · GitHub

Thanks

Arun



Arun Patidar

Avatar

Level 10

Reading an XML will not be any different whether it came from the DAM or a folder on the desktop.

To get the file from the JCR - you can use the JCR API to retrieve the file (Arun Patidar showed a code snippet).

Then use Java logic to read the XML file.