Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

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

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.