Fin prématurée de l'Erreur de fichier
Je suis à l'aide de XSL pour configurer mon fichier XML dans un plus petit format XML. Mon fragments de code sont donc:
public class MessageTransformer {
public static void main(String[] args) {
try {
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer (new StreamSource("sample.xsl"));
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
transformer.transform(new StreamSource ("sample.xml"),
new StreamResult( new FileOutputStream("sample.xml"))
);
}
catch (Exception e) {
e.printStackTrace( );
}
}
}
J'ai eu cette erreur
ERROR: 'Premature end of file.'
ERROR: 'com.sun.org.apache.xml.internal.utils.WrappedRuntimeException: Premature end of file.'
Lorsque j'utilise le fichier XSL pour transformer un fichier XML manuellement je n'ai aucun problème. Cependant, avec ce fichier JAVA je ne peut pas transformer.
Quel serait le problème?
J'ai le sentiment que le fait d'avoir le StreamSource (votre xml d'origine) et StreamResult (le résultat après xslt) pointent vers le même fichier, pourraient vous causer des ennuis.
OriginalL'auteur gencay | 2011-06-09
Vous devez vous connecter pour publier un commentaire.
Vous êtes en streaming à partir de et vers le même fichier. Essayez de la remplacer par quelque chose comme ceci:
pouvez-vous nous dire comment vous l'avez résolu?
OriginalL'auteur wjans
Complète de votre fichier xml donner n'importe quelle balise autres sage, il donnera une erreur: fin Prématurée de fichier.
Comme ça et essayer de nouveau.
OriginalL'auteur NIrav Modi