powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Servlet (jxl)+download file from server
6 сообщений из 6, страница 1 из 1
Servlet (jxl)+download file from server
    #33879714
mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Помогите с сервлетом
нужно реализовать:
клиент посылает запрос на сервер, т.е. запускаеи сервлет
сервлет на диске создает файл test1, потом с помощью jxl его модифицирую и потом надо его открыть обратно у клиета, если это на одном компе, то можно с помощью

String dirname = "c:/";
String filename =fileName+".xls";
Runtime rt=Runtime.getRuntime();
Process pr=rt.exec("c:/Program Files/Microsoft Office/OFFICE11/EXCEL.EXE " + "\"" + dirname + filename + "\"" );

если - клиент-сервер-клиент, то тогда как, вроде бы

ServletOutputStream outputStream;
response.setHeader("Content-Disposition","attachment; filename=test1.xls");
outputStream=response.getOutputStream();

но тогда он окрывает не файл который я создавал, а какой то другой, как задать чтобы открывал пмой файл или как по другому реаливать
спасибо!!!!


import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletInputStream;

import java.io.FileInputStream;
import java.io.PrintWriter;

import java.io.*;
import java.text.*;
import java.util.*;

import jxl.*;
import jxl.write.*;
import jxl.write.Number;

/**
* @author
*
* @web.servlet name="ReportXls"
* @web.servlet-mapping url-pattern="/ReportXls"
*
*/
public class ReportXls extends HttpServlet{
String path;

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request,response);
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//String fileName=request.getParameter("file");
String fileName="test1";


System.out.println("Test1");


try
{
WritableWorkbook wb = Workbook.createWorkbook(new File ("c:/"+fileName+".xls"));
WritableSheet sheet = wb.createSheet("Privet 1", 0);
sheet.setColumnView(0,10);
sheet.setColumnView(1,20);
sheet.setColumnView(2,20);
sheet.setName("Proba");///////////test

jxl.write.Number number = new jxl.write.Number(1,0,789.123);
sheet.addCell(number);

jxl.write.Number number1 = new jxl.write.Number(1,1,789.124);
sheet.addCell(number1);

wb.write();
wb.close();

FileOutputStream fileOut;
ServletOutputStream outputStream;

try {
response.setHeader("Content-Disposition","attachment; filename=test1.xls");
outputStream=response.getOutputStream();


outputStream.flush();
outputStream.close();


/* String dirname = "c:/";
String filename =fileName+".xls";
Runtime rt=Runtime.getRuntime();
Process pr=rt.exec("c:/Program Files/Microsoft Office/OFFICE11/EXCEL.EXE " + "\"" + dirname + filename + "\"" );
*/
}
catch (Exception e) {
}

}
catch(Exception e)
{
response.setContentType("text/html");
e.printStackTrace();
PrintWriter pr =response.getWriter();
pr.println("File not found, xixi");
}
}

public void init() throws ServletException {
path=(String)getInitParameter("filepath");
}
}
...
Рейтинг: 0 / 0
Servlet (jxl)+download file from server
    #33880428
Tomaso
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
....
wb.write();
wb.close();
ServletOutputStream outputStream;

FileOutputStream fileOut; ne nado.

try {
response.setHeader("Content-Disposition","attachment; filename=test1.xls");
outputStream=response.getOutputStream();

FileInputStrream inputXSLFile=new FileInputStream (new File ("c:/"+fileName+".xls"));
byte[] file=new byte[2048];
int len=0;
while((len=inputXSLFile.read(file))!=-1){
outputStream.write(0,len,file);
}
inputXSLFile.close;
....
Pisal sljotu prover' kod.
...
Рейтинг: 0 / 0
Servlet (jxl)+download file from server
    #33880459
mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сейчас гляну
...
Рейтинг: 0 / 0
Servlet (jxl)+download file from server
    #33880492
mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ругается на эту строчку - outputStream.write(0,len,file);


cannot resolve symbol
[javac] symbol : method write (int,int,byte[])
[javac] location: class javax.servlet.ServletOutputStream
[javac] outputStream.write(0,len,file);
[javac] ^
[javac] 1 error
...
Рейтинг: 0 / 0
Servlet (jxl)+download file from server
    #33880504
mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ругается на эту строчку - outputStream.write(0,len,file);


cannot resolve symbol
[javac] symbol : method write (int,int,byte[])
[javac] location: class javax.servlet.ServletOutputStream
[javac] outputStream.write(0,len,file);
[javac] ^
[javac] 1 error
...
Рейтинг: 0 / 0
Servlet (jxl)+download file from server
    #33880525
mos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разобрался:

outputStream.write(file,0,len);
Большое спасибо
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Servlet (jxl)+download file from server
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]