upload file improved

This commit is contained in:
Lucio Lelii 2022-11-11 17:37:42 +01:00
parent fec3941a37
commit 9c5ba19f43
2 changed files with 12 additions and 3 deletions

View File

@ -37,7 +37,9 @@ import org.gcube.common.storagehub.model.service.VersionList;
import org.gcube.common.storagehub.model.types.ACLList;
import org.glassfish.jersey.media.multipart.BodyPart;
import org.glassfish.jersey.media.multipart.ContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataMultiPart;
import org.glassfish.jersey.media.multipart.MultiPart;
import org.glassfish.jersey.media.multipart.MultiPartFeature;
import org.glassfish.jersey.media.multipart.file.FileDataBodyPart;
import org.glassfish.jersey.media.multipart.file.StreamDataBodyPart;
@ -653,6 +655,15 @@ public class DefaultItemManager extends DefaultManagerClient implements ItemMana
multipart.field("name", fileName);
multipart.field("description", description);
StreamDataBodyPart filePart = new StreamDataBodyPart("file", stream);
filePart.setContentDisposition(FormDataContentDisposition.name("file").fileName(fileName).size(contentLength).build());
multipart.bodyPart(filePart);
response = myManager.queryParams(initQueryParameters()).post(Entity.entity(multipart, multipart.getMediaType()));
ContentDisposition contentDisposition;
if (contentLength>0)
contentDisposition = ContentDisposition.type("attachment").fileName(fileName).size(contentLength).build();

View File

@ -27,12 +27,10 @@ import org.gcube.common.storagehub.model.items.Item;
import org.gcube.common.storagehub.model.query.Query;
import org.gcube.common.storagehub.model.service.ItemList;
import org.gcube.common.storagehub.model.service.ItemWrapper;
import org.glassfish.jersey.media.multipart.ContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataMultiPart;
import org.glassfish.jersey.media.multipart.MultiPart;
import org.glassfish.jersey.media.multipart.MultiPartFeature;
import org.glassfish.jersey.media.multipart.file.FileDataBodyPart;
import org.glassfish.jersey.media.multipart.file.StreamDataBodyPart;
import com.fasterxml.jackson.databind.ObjectMapper;
@ -438,7 +436,7 @@ public class DefaultWorkspaceManager extends DefaultManagerClient implements Wor
.path("volatile");
GXInboundResponse response =null;
FormDataMultiPart multipart = new FormDataMultiPart();
StreamDataBodyPart filePart = new StreamDataBodyPart("file", stream);
filePart.setContentDisposition(FormDataContentDisposition.name("file").fileName(fileName).size(contentLength).build());