Uploader une image vers un serveur
Salut,
J'ai fait une applet me permettant de realiser une capture d'ecran et de l'uploader sur mon serveur. Tout se passe bien lorsque je teste en local, mais a partir de mon serveur, j'ai l'erreur suivante :
java.io.FileNotFoundException: http:\ipserveur\NS3_DEV\meetingSnap\images\SW_09082007_135306.gif (Syntaxe du nom de fichier, de répertoire ou de volume incorrecte)
at java.io.RandomAccessFile.open(Native Method)
at java.io.RandomAccessFile.<init>(Unknown Source)
at javax.imageio.stream.FileImageOutputStream.<init>(Unknown Source)
at com.sun.imageio.spi.FileImageOutputStreamSpi.createOutputStreamInstance(Unknown Source)
:cry:
De plus, j'ai remarque que le getcodebase retournait un adresse de mon serveur du type http://ipserveur... tandis que le file a ecrire est du type http:\ipserveur\... donc une inversion des / en \ et la perte d'un des / apres le http: (j'espere que je suis clair)
Mon code est le suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| public static void screenShot(Rectangle screenArea,
Dimension screenshotFinalDimension, String pictureName, String picturePath,
String compressionType) {
BufferedImage buf = null; // Notre capture d'écran originale
BufferedImage bufFinal = null; // Notre capture d'écran redimensionnée
try {
// Création de notre capture d'écran
buf = new Robot().createScreenCapture(screenArea);
} catch (AWTException e) {
e.printStackTrace();
}
// Création de la capture finale
bufFinal = new BufferedImage(screenshotFinalDimension.width,
screenshotFinalDimension.height, BufferedImage.TYPE_INT_RGB);
// Redimensionnement de la capture originale
Graphics2D g = (Graphics2D) bufFinal.getGraphics();
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g.drawImage(buf, 0, 0, screenshotFinalDimension.width,screenshotFinalDimension.height, null);
g.dispose();
try {
ImageIO.write(bufFinal, compressionType, new File(picturePath+pictureName));
} catch (IOException e) {
e.printStackTrace();
}
} |
Etant debutant en java, pourrait on me donner un coup de main pour resoudre ce probleme. Merci:roll: