起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4016|回复: 7

[结贴] 附件下载页面锁定怎么解决

[复制链接]

94

主题

1141

帖子

2380

积分

金牌会员

Rank: 6Rank: 6

积分
2380
发表于 2017-1-8 15:49:31 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
使用这个方法 /UI2/demo/actions/process/invokeAction/downloadFile.j 下载附件,发送了一个请求后页面会锁死,需等待下载完成后才能进行其他操作,请问有什么办法解决吗?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2017-1-9 11:58:17 | 显示全部楼层
开发版是单线程的只能等处理后才能支持其他的,在调用的时候用异步的方式看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

94

主题

1141

帖子

2380

积分

金牌会员

Rank: 6Rank: 6

积分
2380
 楼主| 发表于 2017-1-9 13:28:44 | 显示全部楼层
jishuang 发表于 2017-1-9 11:58
开发版是单线程的只能等处理后才能支持其他的,在调用的时候用异步的方式看看 ...

开发版是单线程?意思是正式版没问题是吗? 我是按/UI2/demo/actions/process/invokeAction/mainActivity.w这个demo的下载去做的,怎么异步啊?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2017-1-9 14:50:33 | 显示全部楼层
/UI2/demo/actions/process/invokeAction/downloadFile.j 就是servlet,可以按照servlet的异步请求处理看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

94

主题

1141

帖子

2380

积分

金牌会员

Rank: 6Rank: 6

积分
2380
 楼主| 发表于 2017-1-10 13:41:07 | 显示全部楼层
jishuang 发表于 2017-1-9 14:50
/UI2/demo/actions/process/invokeAction/downloadFile.j 就是servlet,可以按照servlet的异步请求处理看 ...

我在downloadFile.j 这个类改成这样,在执行的时候到这里AsyncContext act = request.startAsync();报错,也不知道怎么回事,麻烦看一下
  1. public class DownloadFile extends com.justep.ui.impl.JProcessorImpl  {

  2.         @Override
  3.         protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  4.                 System.out.println("进入Servlet的时间是:" + new Date() + ".");
  5.                 AsyncContext act = request.startAsync();
  6.                 new Thread(new AsynExecutor(act)).start();
  7.                 System.out.println("结束Servlet的时间是:" + new Date() + ".");
  8.         }
  9. }

  10. class AsynExecutor implements Runnable  {
  11.         private AsyncContext act = null;

  12.          public AsynExecutor(AsyncContext act) {  
  13.          this.act = act;  
  14.      }
  15.          
  16.         public void run() {
  17.                 // TODO 自动生成的方法存根
  18.         try {
  19.                         Thread.sleep(3000);
  20.                         System.out.println("业务执行完的时间是: " + new Date() + ".");
  21.                         act.complete();
  22.                 } catch (InterruptedException e) {
  23.                         // TODO 自动生成的 catch 块
  24.                         e.printStackTrace();
  25.                 }  
  26.         }
  27. }
复制代码

报错信息:

  1. 严重: Servlet.service() for servlet main-servlet threw exception
  2. java.lang.AbstractMethodError: org.apache.catalina.connector.RequestFacade.startAsync()Ljavax/servlet/AsyncContext;
  3.         at javax.servlet.ServletRequestWrapper.startAsync(ServletRequestWrapper.java:364)
  4.         at DownloadFile.doGet(DownloadFile.java:46)
  5.         at com.justep.ui.impl.JProcessorImpl.execute(Unknown Source)
  6.         at com.justep.ui.JavaServer.runJava(Unknown Source)
  7.         at com.justep.ui.JavaServer.doJ(Unknown Source)
  8.         at com.justep.ui.JavaServer.service(Native Method)
  9.         at com.justep.ui.servlet.MainServlet.service(Unknown Source)
  10.         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
  11.         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
  12.         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  13.         at com.justep.portal.filter.RedirectFilter.doFilter(Unknown Source)
  14.         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
  15.         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
  16.         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
  17.         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
  18.         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  19.         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
  20.         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
  21.         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
  22.         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
  23.         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
  24.         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
  25.         at java.lang.Thread.run(Thread.java:745)
复制代码



回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2017-1-10 15:26:17 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

94

主题

1141

帖子

2380

积分

金牌会员

Rank: 6Rank: 6

积分
2380
 楼主| 发表于 2017-1-10 19:24:38 | 显示全部楼层
jishuang 发表于 2017-1-10 15:26
http://blog.csdn.net/yuhaiqiang_123/article/details/45873365

是不是说要用Tomcat7才能用servlet3.0啊?但是平台升级Tomcat7太麻烦。。。根据帖子做的,还是有错,无语
  1. 严重: Exception sending context initialized event to listener instance of class com.justep.x.loader.NativeLoaderListener
  2. java.security.NoSuchAlgorithmException: Cannot find any provider supporting AES/ECB/PKCS5Padding
  3.         at javax.crypto.Cipher.getInstance(Cipher.java:540)
  4.         at com.justep.security.decrypt.DecryptClassLoader.findClass(Native Method)
  5.         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
  6.         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
  7.         at com.justep.security.decrypt.Decrypt.getClass(Unknown Source)
  8.         at com.justep.security.decrypt.Decrypt.createObject(Unknown Source)
  9.         at com.justep.x.loader.NativeLoaderListener.a(Unknown Source)
  10.         at com.justep.x.loader.NativeLoaderListener.contextInitialized(Unknown Source)
  11.         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
  12.         at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
  13.         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  14.         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
  15.         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
  16.         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
  17.         at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
  18.         at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1862)
  19.         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  20.         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  21.         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  22.         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  23.         at java.lang.Thread.run(Thread.java:745)
复制代码



回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2017-1-11 10:06:49 | 显示全部楼层
根据错误到网上查找可能的原因
或者用企业版测试看看是否是多线程的

远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-22 11:24 , Processed in 0.059809 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表