使用servlet在Java中上载文件
我正在使用javazoom进行上传使用servlet在Java中上载文件,java,servlets,file-upload,Java,Servlets,File Upload,我正在使用javazoom进行上传 protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException { PrintWriter out = null; JOptionPane.showMessageDialog(null, "Lets do this"); try { response.setCon
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException {
PrintWriter out = null;
JOptionPane.showMessageDialog(null, "Lets do this");
try {
response.setContentType("text/html;charset=UTF-8");
try {
MultipartFormDataRequest dataRequest = new MultipartFormDataRequest(request);
//get uploaded files
Hashtable files = dataRequest.getFiles();
if (!files.isEmpty()) {
UploadFile uploadFile = (UploadFile) files.get("filename");
byte[] bytes = uploadFile.getData();
String s = new String(bytes);
文件总是空的。
需要帮忙吗
然后,我尝试使用Apache Commons FileUpload执行此操作:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException {
PrintWriter out = null;
try {
response.setContentType("text/html;charset=UTF-8");
//MultipartFormDataRequest dataRequest = new MultipartFormDataRequest(request);
//get uploaded files
FileItemFactory factory = new DiskFileItemFactory();
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
List files = null;
try {
files = upload.parseRequest(request);
} catch (FileUploadException ex) {
Logger.getLogger(ProcessUploadItem.class.getName()).log(Level.SEVERE, null, ex);
}
在files=upload.parseRequest(请求)时失败代码>
有什么建议吗
抱歉,谢谢:)检查发送文件的表单是否定义了enctype=“multipart/form data”,如下所示:
<form enctype="multipart/form-data" action="...
您是否正在使用其他框架,如特立尼达或类似的框架?它们通常包括恢复上传文件的过滤器,因此当进程到达您的服务器时,请求不包含任何附加文件。我建议使用更流行、更引人注目的库来实现这一点,例如Apache Commons FileUpload。它更有可能工作,有更好的文档,有更多的人在身边帮助您使用它。我把这篇文章写到了我的另一个servlet out.println(“”);out.println(“文件上传”);println(“选择文件:”);out.println(“”);out.println(“
”);out.println(“”);out.println(“”);不,我不相信我是这样的:请在标记问题时注意提示提示。任何名称后数字小于10的标记都可能是错误的。避免创建新标签。啊,thnx…我会记住这一点