probleme export en xls (Servlet)OutputStream [JAVA] - Java - Programmation
Marsh Posté le 12-08-2008 à 09:58:43
Code :
|
non ?
Marsh Posté le 12-08-2008 à 10:04:01
non c pas ca (preuve dans le premier code ca y est pas et il marche dans une autre appli.)
Pour moi ca vient pas du code en soit car on a copier coller celui ci dans une autre appli et il marche. Donc je vois pas ce que ca peut etre d'autre que les lib mais on a tester ca aussi. La j'ai vraiment plus d'idees
edit: j'ai essayé qd meme et c pas ca
Marsh Posté le 12-08-2008 à 10:07:17
ouais c tres bizarre et c'est tres urgent
Marsh Posté le 12-08-2008 à 10:15:54
je viens de faire un autre essais ca ne marche tjs pas.
code
Citation : |
resultat
Citation : |
Marsh Posté le 12-08-2008 à 11:00:25
pour info je l'ai mis sur une autre application et ca marche. Je comprends vraiment pas ce qui cloche avec mon appli.
Marsh Posté le 13-08-2008 à 10:27:40
un de mes collegues a trouvé la solution. cela venait de "inline" dans le header qu'il fallait mettre en "attachement".
Mais on ne comprend pas pourquoi le meme code marchait sur d'autres appli
Marsh Posté le 12-08-2008 à 09:49:11
Salut, je cré un fichier excel avec POI et veux l'exporter.
je tombe sur une page de code de ce style et pas de boite de dialogue pour choisir la destination
ÐÏࡱá;þÿ /þÿÿÿþÿÿÿ0ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÓÌAá°Áâ\pantoine B°a=œ¯¼=h\:¾#8X@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial"$"#,##0_);\("$"#,##0\)!"$"#,##0_);[Red]\("$"#,##0\)""$"#,##0.00_);\("$"#,##0.00\)'""$"#,##0.00_);[Red]\("$"#,##0.00\)7*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_).))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)?,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)6+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_)àõÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ à À à+õÿ øÀ à)õÿ øÀ à,õÿ øÀ à*õÿ øÀ à õÿ øÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…ACTUAL_CAPACITYŒü¦ • Area CodeCRP WorkcentreCRP Workcentre DescOEE P1Inventory P1 PlantOEE P2Inventory P2 PlantOEE P3Inventory P3 PlantOEE
...
je reconnais mes data dans le code donc c'est le fichier. Ce n'est donc pas un probleme de POI mais d'export.
J'ai essayé le code suivant. Il marche sur une autre appli mais pas celle ci
protected void processRequest(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("application/vnd.ms-excel" );
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("new sheet" );
// Create a row and put some cells in it. Rows are 0 based.
HSSFRow row = sheet.createRow((short)0);
// Create a cell and put a value in it.
HSSFCell cell = row.createCell((short)0);
cell.setCellValue(1);
// Or do it on one line.
row.createCell((short)1).setCellValue(1.2);
row.createCell((short)2).setCellValue("This is a string" );
row.createCell((short)3).setCellValue(true);
// Write the output
OutputStream out = response.getOutputStream();
wb.write(out);
out.close();
}
j'ai essayé ca aussi, ca marche aussi sur une autre appli mais pas celle-ci
response.setHeader("Cache-Control", "max-age=30" );
response.setContentType("application/vnd.ms-excel" );
StringBuffer sbFilename = new StringBuffer();
sbFilename.append("Actual_Capactity_" );
DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd" );
Date date = new Date();
sbFilename.append((dateFormat.format(date)).toString());
sbFilename.append(".xls" );
StringBuffer sbContentDispValue = new StringBuffer();
sbContentDispValue.append("inline" );
sbContentDispValue.append("; filename=" );
sbContentDispValue.append(sbFilename);
response.setHeader("Content-disposition",sbContentDispValue.toString());
ServletOutputStream servletOutputStream = response.getOutputStream();
servletOutputStream.flush();
wb.write(servletOutputStream);
servletOutputStream.close();
J'ai essayé de mettre a jour ma version de java.io.outputstream qui date de 2001 mais pas de changement.
Merci de votre aide j'ai besoin d'une solution assez vite.
(recap:
creation du fichier avec POI
export avec outputstream ou servletoutputstream
pas de boite de dialogue pour choisir la destination
affichage du code du fichier)
Message édité par Toinou87 le 12-08-2008 à 09:51:33
---------------
Toinou87 ;-p May the force be with you!!