Changeset 24962
- Timestamp:
- 2012-01-24T10:10:05+13:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/LibraryServlet.java
r24753 r24962 357 357 358 358 String query_string; 359 if (request.getMethod().equals("GET"))360 { 361 query_string = request.getQueryString(); 362 } 363 else if (request.getMethod().equals("POST"))359 if (request.getMethod().equals("GET")) 360 { 361 query_string = request.getQueryString(); 362 } 363 else if (request.getMethod().equals("POST")) 364 364 { 365 365 query_string = ""; 366 366 Map paramMap = request.getParameterMap(); 367 367 Iterator keyIter = paramMap.keySet().iterator(); 368 369 while (keyIter.hasNext())370 { 371 String current = (String) keyIter.next();372 query_string += current + "=" + ((String[]) paramMap.get(current))[0];373 if (keyIter.hasNext())368 369 while (keyIter.hasNext()) 370 { 371 String current = (String) keyIter.next(); 372 query_string += current + "=" + ((String[]) paramMap.get(current))[0]; 373 if (keyIter.hasNext()) 374 374 { 375 375 query_string += "&"; 376 376 } 377 377 } 378 378 379 379 DiskFileItemFactory fileItemFactory = new DiskFileItemFactory(); 380 380 … … 386 386 ServletFileUpload uploadHandler = new ServletFileUpload(fileItemFactory); 387 387 388 String storageLocation = ""; 389 File uploadedFile = null; 388 390 try 389 391 { 390 392 List items = uploadHandler.parseRequest(request); 391 393 Iterator iter = items.iterator(); 392 while (iter.hasNext())394 while (iter.hasNext()) 393 395 { 394 396 FileItem current = (FileItem) iter.next(); 395 if (current.isFormField())397 if (current.isFormField()) 396 398 { 397 399 query_string += current.getFieldName() + "=" + current.getString(); 398 if (iter.hasNext())400 if (iter.hasNext()) 399 401 { 400 402 query_string += "&"; 401 403 } 404 405 if(current.getFieldName().equals(GSParams.FILE_LOCATION)) 406 { 407 storageLocation = current.getString(); 408 } 402 409 } 403 410 else 404 411 { 405 412 File file = new File(GlobalProperties.getGSDL3Home() + File.separator + "tmp" + File.separator + current.getName()); 413 File tmpFolder = new File(GlobalProperties.getGSDL3Home() + File.separator + "tmp"); 414 if(!tmpFolder.exists()) 415 { 416 tmpFolder.mkdirs(); 417 } 406 418 current.write(file); 407 } 408 } 409 } 410 catch (Exception e) 419 420 uploadedFile = file; 421 } 422 } 423 424 if(!storageLocation.equals("") && uploadedFile != null) 425 { 426 File toFile = new File(GlobalProperties.getGSDL3Home() + storageLocation); 427 if(toFile.exists()) 428 { 429 logger.error("Cannot move the stored file because the file \"" + storageLocation + "\" already exists"); 430 } 431 else 432 { 433 logger.info("Moving uploaded file (" + uploadedFile.getAbsolutePath() + ") to " + toFile.getAbsolutePath()); 434 uploadedFile.renameTo(toFile); 435 } 436 } 437 } 438 catch (Exception e) 411 439 { 412 440 logger.error("Exception in LibraryServlet -> " + e.getMessage()); 413 441 } 414 415 if (query_string.equals(""))442 443 if (query_string.equals("")) 416 444 { 417 445 query_string = null; … … 422 450 query_string = null; 423 451 } 424 452 425 453 if (query_string != null) 426 454 { … … 473 501 session.setAttribute(GSXML.USER_ID_ATT, uid); 474 502 } 503 475 504 request.setCharacterEncoding("UTF-8"); 476 505 response.setContentType("text/html;charset=UTF-8");
Note:
See TracChangeset
for help on using the changeset viewer.