Итак, я работаю над проектом, где мне нужно запустить процесс, который может занять несколько часов.Я не смотрю, чтобы заставить пользователя ждать завершения процесса, поэтому после запуска процесса я хочу перенаправить на другую страницу jsp
Я попытался выполнить следующее:
WebServlet(name = "FileUploadServlet", urlPatterns = "/upload")
@ MultipartConfig
открытый класс FileUploadServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// check if there is a upload request
if(ServletFileUpload.isMultipartContent(request)){
// get session id
HttpSession session = request.getSession(true);
String sessionID = session.getId();
// set session ID as attriube
// получить местоположение, в котором будет сохранен загруженный файл, и добавить подпапку с идентификатором сеанса. Файл sessionFolder = новый файл (getServletContext ().getInitParameter ("upload.location") + "/" + sessionID);// File sessionFolder = new File (getServletContext (). GetRealPath ("webapp /" + sessionID));
//make a folder for the files if there is none
if (!sessionFolder.exists()){
sessionFolder.mkdirs();
System.out.println("sessionFolder = " + sessionFolder);
System.out.println("folder made");
}
// get parts from the request
for (Part part : request.getParts()) {
// get file name
String filename = "uploadedFile";
// save file to sessionFolder location
part.write(sessionFolder + "/" +filename);
break;
}
response.sendRedirect("whileWaiting.jsp");
new doProces;
сначала сервлет управляет загрузкой файла, необходимого для doProces.это отлично работаетПосле этого происходит перенаправление на страницу whileWaiting en, после чего начинается процесс.если это будет выполнено, doProces будет запущен, но останется на текущей странице и будет перенаправлен только после завершения процесса.
Кроме того, я впервые публикую здесь вопрос, так что мне понятно, что я имею в виду.
Любая помощь очень ценится.