I have use below code to parse the xml using xslt i am getting below error. Please help me to resolve this.

 

 

package com;

 

import java.io.ByteArrayOutputStream;

import java.io.File;

import java.io.*;

import java.io.IOException;

 

 

import javax.xml.transform.Source;

import javax.xml.transform.Transformer;

import javax.xml.transform.TransformerFactory;

import javax.xml.transform.stream.StreamResult;

import javax.xml.transform.stream.StreamSource;

 

 

 

 

public class TestXSLT {

 

 

 

 

        public static void main(String[] args)throws IOException  {

     

              

                String InputXmlFileName = args[0];

                String InputXsltFileName = args[1];

                String OutputCsvFineName =args[2];

                BufferedWriter out = new BufferedWriter(new FileWriter(OutputCsvFineName));

                String returnHtml;

        try {

            Source xmlSource = new StreamSource(new File(InputXmlFileName));

            Source xsltSource = new StreamSource(new File(InputXsltFileName));

 

 

 

 

            TransformerFactory factory = TransformerFactory.newInstance();

            Transformer transformer = factory.newTransformer(xsltSource);

            ByteArrayOutputStream bOut = new ByteArrayOutputStream();

            transformer.transform(xmlSource, new StreamResult(bOut));

 

 

 

 

            bOut.close();

            returnHtml = bOut.toString();

            out.write(returnHtml);

            out.close();

         // System.err.println(returnHtml);

        } catch (Exception e) {

                e.printStackTrace();

            System.err.println("Exception occurred: " + e);

        }

        }

 

}

 

 

 

I am getting below error .Please help me this issue..

 

ERROR:  'No more DTM IDs are available'

javax.xml.transform.TransformerException: com.sun.org.apache.xml.internal.dtm.DTMException: No more DTM IDs are available

  at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:716)

  at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)

  at com.TestXSLT.main(TestXSLT.java:34)

Caused by: com.sun.org.apache.xml.internal.dtm.DTMException: No more DTM IDs are available

  at com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault.addDTM(DTMManagerDefault.java:146)

  at com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:416)

  at com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:234)

  at com.sun.org.apache.xalan.internal.xsltc.dom.SAXImpl.getResultTreeFrag(SAXImpl.java:1832)

  at com.sun.org.apache.xalan.internal.xsltc.dom.DOMAdapter.getResultTreeFrag(DOMAdapter.java:434)

  at MACSXML_Parts.template$dot$0()

  at MACSXML_Parts.applyTemplates()

  at MACSXML_Parts.applyTemplates()

  at MACSXML_Parts.transform()

  at com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:603)

  at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:709)

  ... 2 more

---------

com.sun.org.apache.xml.internal.dtm.DTMException: No more DTM IDs are available

  at com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault.addDTM(DTMManagerDefault.java:146)

  at com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:416)

  at com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:234)

  at com.sun.org.apache.xalan.internal.xsltc.dom.SAXImpl.getResultTreeFrag(SAXImpl.java:1832)

  at com.sun.org.apache.xalan.internal.xsltc.dom.DOMAdapter.getResultTreeFrag(DOMAdapter.java:434)

  at MACSXML_Parts.template$dot$0()

  at MACSXML_Parts.applyTemplates()

  at MACSXML_Parts.applyTemplates()

  at MACSXML_Parts.transform()

  at com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:603)

  at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:709)

  at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)

  at com.TestXSLT.main(TestXSLT.java:34)

Exception occurred: javax.xml.transform.TransformerException: com.sun.org.apache.xml.internal.dtm.DTMException: No more DTM IDs are available

FacebookTwitterLinkedin
Pin It
Joomla Tutorials for Beginners