Criei um XML a partir de incontáveis métodos, mas para que ele seja visualizado pelo browser com um stylesheet tenho que definir um xsl.
Quando adiciono a linha:
<?xml-stylesheet type='text/xsl' href='musiteca.xsl'?>
logo abaixo de:
<?xml version="1.0" encoding="iso-8859-1"?>
tudo funciona perfeitamente, ou seja, é exatamente oq quero.
Mas quando tento adicionar esse linha pelo meu método, ele só fica na frente do nó raiz - assim não funciona. Já tentei de muitas formas força-lo a ser “escrito” antes do nó raiz, mas tudo em vão.
public void addProcessingInstruction(Document doc) {
Element root = doc.getDocumentElement();
Element folks = (Element)root.getLastChild();
ProcessingInstruction pi = (ProcessingInstruction)doc.createProcessingInstruction("xml-stylesheet","type='text/xsl' href='musiteca.xsl'");
root.insertBefore(pi,folks);
}
Sei que muitos estranharão o getLastChild(), mas digo que com getFirstChild() o PI só fica abaixo do nó raiz.
Como adicionar essa ProcessingInstruction devidamente em seu lugar?
Grato