AJAX和Servlet文件进度条显示

1:weblogic8.1下,commons-fileupload-1.2.jar 和 commons-io-1.1.jar报了如下异常。
java.lang.NoSuchMethodError: parseRequest
at org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(Ljavax.servlet.http.HttpServletRequest;)Ljava.util.List;(ServletFileUp
load.java:126)
at com.pingan.mysystem.mytest.web.controller.Upload.upload(Ljavax.servlet.http.HttpServletRequest;)V(Upload.java:49)
at com.pingan.mysystem.mytest.web.controller.Upload.doPost(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(U
pload.java:38)
at javax.servlet.http.HttpServlet.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(HttpServlet.java:7
60)
at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava.lang.Object;(ServletStubImpl.java:996)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Lweblogic.servlet.inte
rnal.FilterChainImpl;)V(ServletStubImpl.java:419)
at weblogic.servlet.internal.TailFilter.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Ljavax.servlet.FilterChain;)V(Ta
ilFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(FilterChainImpl.java:27)

at com.paic.pafa.app.web.filter.CharacterEncodingFilter.doFilterInternal(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServle
tResponse;Ljavax.servlet.FilterChain;)V(CharacterEncodingFilter.java:73)
at com.paic.pafa.app.web.filter.OncePerRequestFilter.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Ljavax.servlet.Filt
erChain;)V(OncePerRequestFilter.java:73)
at weblogic.servlet.internal.FilterChainImpl.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(FilterChainImpl.java:27)

at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava.lang.Object;(WebAppServletContext.java:6458)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic.security.subject.AbstractSubject;Ljava.security.PrivilegedAction;)Ljava.
lang.Object;(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Lweblogic.security.acl.internal.AuthenticatedSubject;Lweblogic.security.acl.internal.Authen
ticatedSubject;Ljava.security.PrivilegedAction;)Ljava.lang.Object;(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic.servlet.internal.ServletRequestImpl;Lweblogic.servlet.internal.Servl
etResponseImpl;)V(WebAppServletContext.java:3661)
at weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic.kernel.ExecuteThread;)V(ServletRequestImpl.java:2630)
at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest;)V(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:178)
at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown Source)
>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现Ajax上传文件显示进度条,您可以使用FormData对象和XMLHttpRequest对象。以下是一个简单的示例代码: HTML代码: ``` <form id="file-upload-form"> <input type="file" name="file"> <button type="submit">上传文件</button> </form> <div id="progress-bar"></div> ``` JavaScript代码: ``` var form = document.getElementById('file-upload-form'); var progressBar = document.getElementById('progress-bar'); form.addEventListener('submit', function(e) { e.preventDefault(); var formData = new FormData(this); var xhr = new XMLHttpRequest(); // 监听上传进度 xhr.upload.addEventListener('progress', function(e) { if (e.lengthComputable) { var percentComplete = (e.loaded / e.total) * 100; progressBar.style.width = percentComplete + '%'; } }, false); // 完成上传 xhr.addEventListener('load', function() { progressBar.innerHTML = '上传完成!'; }, false); // 处理上传错误 xhr.addEventListener('error', function() { progressBar.innerHTML = '上传失败。'; }, false); // 发送上传请求 xhr.open('POST', 'upload.php'); xhr.send(formData); }); ``` 在这个示例中,我们首先获取了表单和进度条元素。然后,我们监听了表单的提交事件,阻止了默认的表单提交行为。接着,创建了FormData对象来包含上传的文件数据,并创建了XMLHttpRequest对象。我们给XMLHttpRequest对象添加了一个上传进度事件监听器,当上传进度发生变化时,更新进度条的宽度。接着,我们添加了一个成功上传完成的事件监听器和一个上传错误的监听器。最后,我们打开了一个POST请求,并将FormData对象作为参数发送到服务器。 请注意,这只是一个基本的示例,您需要根据自己的需求进行修改。同时,要确保服务器端也能够处理Ajax上传请求,并返回正确的响应。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值