Jeg får en masse forskellige xml filer ind og jeg skal tilknytte et xsl til dem alle sammen. Hvis de i forvejen har et skal det blot erstattes med det jeg har. Altså et link til det. Men hvordan gør jeg det?
Ok har fundet ud af det er en PROCESSING_INSTRUCTION_NODE Så jeg har løst det således. Kom endelig med kritik eller en bedre løsning hvis i har en. NodeList nodeList = xmlDoc.getChildNodes(); boolean xslFound = false; for (int i = 0; i < nodeList.getLength(); i++) { if(nodeList.item(i).getNodeName().equalsIgnoreCase("xml-stylesheet")) { xslFound = true; Node noden = nodeList.item(i); System.out.println(noden.getNodeType()); System.out.println(noden.getNodeValue()); } //System.out.println(nodeList.item(i).getNodeName()); } if(!xslFound) { Node newNode = xmlDoc.createProcessingInstruction("xml-stylesheet","type=\"text/xsl\" href=\"OasisUblOrder1-0.xsl\""); //newNode.setNodeValue("type=\"text/xsl\" href=\"OasisUblOrder1-0.xsl\""); xmlDoc.insertBefore(newNode, nodeList.item(0)); System.out.println(dk.edbgruppen.core.xml.XMLHelper.serialize(xmlDoc)); }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.