Если у вас есть доступ к серверной части, советую отладить процесс загрузки. Исключение предполагает, что вы хотите открыть файл на сервере на основе имени загруженного файла. На вашем локальном компьютере это работает, потому что он работает в той же файловой системе. На стороне сервера Apache FileUpload получает двоичные данные, которые необходимо извлечь из потока данных запроса:
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if (ServletFileUpload.isMultipartContent(request)) {
FileItemFactory factory = new DiskFileItemFactory(Integer.MAX_VALUE, null);
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);
for (FileItem item : items) {
byte[] data = item.get();
// do something with the binary data
}
} else {
System.err.println("Not a multipart/form-data");
}
}
А также вам нужна форма:
<form name='frm' method="POST" action='UploadServlet'
id="frm" enctype="multipart/form-data">