开发者社区 > 云存储 > 对象存储OSS > 正文

上传文件第二次请求失败,抛出异常:java.lang.IllegalStateException:

上传文件第二次请求失败,抛出异常:java.lang.IllegalStateException: Connection pool shut down

展开
收起
游客yhhlgedgsa7mk 2023-04-07 10:02:41 330 0
4 条回答
写回答
取消 提交回答
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    在阿里云OSS(对象存储服务)中,如果在上传文件时,第二次请求失败并抛出异常"java.lang.IllegalStateException",可能有以下几种可能的原因和解决方法:

    1、文件已存在:OSS中的文件名是唯一的,如果第一次上传的文件已经存在于OSS中,再次上传相同文件名的文件时会导致冲突。解决方法可以是选择不同的文件名,或者使用OSS的覆盖上传接口进行文件的覆盖操作。

    2、文件正在被占用:如果第一次上传的文件正在被其他请求占用,例如正在被下载或者被其他应用读取,再次上传相同文件时可能会导致冲突。解决方法可以是等待文件释放后再次上传,或者使用OSS的并发上传接口进行并发上传操作。

    3、请求顺序错误:如果在上传文件时,第一次请求还没有完成,第二次请求已经发起,可能会导致冲突。解决方法可以是确保每次请求都在上一次请求完成后再发起,可以使用同步方式上传文件,或者在异步方式中使用互斥锁等方式控制请求的顺序。

    4、网络异常:网络异常可能导致上传请求失败。解决方法可以是检查网络连接是否正常,确保请求可以正常传输。

    5、其他异常情况:"java.lang.IllegalStateException"异常可能还可以由其他未知原因引起。在处理此类异常时,可以查看异常的具体信息,例如异常堆栈信息,以便更好地理解问题的根本原因,并采取相应的解决措施。

    建议检查以上可能的原因,并根据具体情况采取相应的解决方法。如果问题仍然存在,可以联系阿里云技术支持获取更进一步的帮助。

    2023-04-08 23:52:44
    赞同 展开评论 打赏
  • 大鹏一日同风起,扶摇直上九万里

    你好,以上问题有可能是 调用ossClient.shutdown()接口后,还继续通过ossClient发送请求。

    解决办法: 请检查调用逻辑,确保调用了ossClient.shutdown()接口之后,不再通过ossClient发送请求。

    2023-04-07 14:08:48
    赞同 展开评论 打赏
  • 十年摸盘键,代码未曾试。 今日码示君,谁有上云事。

    这是由于在创建连接的时候@Bean默认是单例的,所以当我们每次上传完后,连接关闭,导致再次上传出现连接错误。

    解决方案:将bean设置成多例模式

    用Singleton Scope来定义一个bean,意味着容器创建一个单例的bean。虽有对它的请求都会返回相同的对象,任何一方进行了修改,都会响应到其他使用的地方。如果不指定其他scope,singleton是默认的scope。

    用Prototype Scope定义的bean,每次容器请求都会创建一个新的bean;

    2023-04-07 10:29:02
    赞同 1 展开评论 打赏
  • 坚持这件事孤独又漫长。

    可能只有神知道你在问什么吧😇

    2023-04-07 10:15:53
    赞同 1 展开评论 打赏

热门讨论

热门文章

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载