上传文件第二次请求失败,抛出异常:java.lang.IllegalStateException:[阿里云oss]

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

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
3 条回复 A 作者 M 管理员
  1. 在阿里云OSS(对象存储服务)中,如果在上传文件时,第二次请求失败并抛出异常”java.lang.IllegalStateException”,可能有以下几种可能的原因和解决方法:

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

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

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

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

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

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

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

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

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

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

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

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

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