[FOP] Problème création de PDF
Bonjour tout le monde.
alors voila mon problème. Je génère des fichier pdf avec la librairie FOP, j'ai donc crée au préalable une feuille de style XSL-FO et mon fichier XML se génère automatiquement, grâce à JDOM.
Mon problème vient que, suivant l'emplacement du programme sur le disque dur la création ne marche pas. Voici le code qui génère l'exception:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
Driver driver = new Driver();
driver.setRenderer(Driver.RENDER_PDF);
driver.setOutputStream(new java.io.FileOutputStream(fichierPDF));
Result resultat = new SAXResult(driver.getContentHandler());
Source source = new StreamSource(fichierXML);
Source style = new StreamSource(fichierXSL);
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer(style);
transformer.transform(source, resultat); |
Sur cette dernière ligne cette exception est générée :
Code:
1 2
|
javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: java.net.MalformedURLException: unknown protocol: c |
Après avoir testé différents emplacement, on dirait que le programme plante si dans son chemin il y a un espace (comme dans "Program Files" par exemple, ou "Documents and Settings").
Si l'erreur vient effectivement de là, sauriez-vous comment faire pour qu'il accepte les espaces dans le chemin ? Parce que ca serait sympa que l'utilisateur puisse choisir d'installer son programme ou il le souhaite(en particulier dans "Program Files").
Merci d'avance :)
PS: Pour récupérer le chemin d'ou est exécuté le programme j'utilise :
Code:
String chemin = System.getProperty("user.dir" );