Browse Source

fix #2552 minio 8.1.0

Shinsuke Sugaya 4 years ago
parent
commit
2c8d33bc6b

+ 1 - 1
pom.xml

@@ -50,7 +50,7 @@
 		<asm.version>9.1</asm.version>
 		<tika.version>1.26</tika.version>
 		<groovy.version>3.0.7</groovy.version>
-		<minio.version>7.1.4</minio.version>
+		<minio.version>8.1.0</minio.version>
 		<okhttp.version>3.14.9</okhttp.version>
 
 		<!-- Crawler -->

+ 3 - 7
src/main/java/org/codelibs/fess/app/web/admin/storage/AdminStorageAction.java

@@ -43,13 +43,11 @@ import org.lastaflute.web.ruts.multipart.MultipartFormFile;
 import org.lastaflute.web.ruts.process.ActionRuntime;
 import org.lastaflute.web.servlet.request.stream.WrittenStreamOut;
 
-import io.minio.ErrorCode;
 import io.minio.GetObjectArgs;
 import io.minio.ListObjectsArgs;
 import io.minio.MakeBucketArgs;
 import io.minio.MinioClient;
 import io.minio.PutObjectArgs;
-import io.minio.PutObjectOptions;
 import io.minio.RemoveObjectArgs;
 import io.minio.Result;
 import io.minio.errors.ErrorResponseException;
@@ -167,10 +165,8 @@ public class AdminStorageAction extends FessAdminAction {
         try (final InputStream in = uploadFile.getInputStream()) {
             final FessConfig fessConfig = ComponentUtil.getFessConfig();
             final MinioClient minioClient = createClient(fessConfig);
-            final PutObjectOptions options = new PutObjectOptions(uploadFile.getFileSize(), -1);
             final PutObjectArgs args = PutObjectArgs.builder().bucket(fessConfig.getStorageBucket()).object(objectName)
-                    .stream(in, options.objectSize(), options.partSize()).contentType(options.contentType()).headers(options.headers())
-                    .sse(options.sse()).build();
+                    .stream(in, uploadFile.getFileSize(), -1).contentType("application/octet-stream").build();
             minioClient.putObject(args);
         } catch (final Exception e) {
             throw new StorageException("Failed to upload " + objectName, e);
@@ -233,8 +229,8 @@ public class AdminStorageAction extends FessAdminAction {
                 }
             }
         } catch (final ErrorResponseException e) {
-            final ErrorCode code = e.errorResponse().errorCode();
-            if (code == ErrorCode.NO_SUCH_BUCKET) {
+            final String code = e.errorResponse().code();
+            if ("NoSuchBucket".equals(code)) {
                 final MinioClient minioClient = createClient(fessConfig);
                 try {
                     final MakeBucketArgs args = MakeBucketArgs.builder().bucket(fessConfig.getStorageBucket()).build();