Hi experts
I'm currently evaluating the Amazon S3 bucket solution for our medias. Everytime I want to save a media I got this error and the media will not be persisted. The strange thing is that the upload to the bucket is working.
Any ideas what I'm doing wrong?
HMC error: 
My configuration:
# Amazon S3 Bucket
# Put Spring bean id of the S3 strategy that keeps the logic responsible for communication between hybris and Amazon S3
media.folder.s3medias.storage.strategy=s3MediaStorageStrategy
media.folder.s3medias.url.strategy=s3MediaUrlStrategy
# Set that URL is valid for 5 minutes
media.folder.s3medias.url.signed.validFor=5
media.folder.s3medias.accessKeyId=XXX
media.folder.s3medias.secretAccessKey=XXX/XXX
media.folder.s3medias.bucketId=testmspmediabucket
media.globalSettings.s3MediaStorageStrategy.cleanOnInit=true
Amazon:
Bucket with my saved media: 
Error:
Caused by: de.hybris.platform.media.exceptions.MediaStoreException: com.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: dfggsdf), S3 Extended Request ID: sdfg/sdfg+sdfg/sdfg
at de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:149)
Full error:
I think the warning can be ignored.
WARN [hybrisHTTP32] [AmazonS3Client] Attempting to re-send the request to testmspmediabucket.s3-external-1.amazonaws.com with AWS V4 authentication. To avoid this warning in the future, please use region-specific endpoint to access buckets located in regions that require V4 signing.
=======================================================================
Exception in MasterServlet
Time: Thu Jan 25 21:00:39 CET 2018
Query string: wid=MC0x479&MC0x478_file=%2FProjects%2Fmicrospot-b2c%2Fhybris%2Ftemp%2Fhybris%2Fhmc_upload_file1801757625646233598.tmp&MC0x478_filename=c74461ae2a9917a2482ac7b53f195b3c6e2fdd59e778c673256fb29d1b07f181.jpg&cancel=false&tempfilename=upload_MC0x478.tmp&MC0x478_!save=true
de.hybris.platform.jalo.JaloSystemException: com.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: fsgdfg), S3 Extended Request ID: sdfg/KHcvHkfnCuya7DDakAX+sdfg/sdfg=[HY--1]
at de.hybris.platform.jalo.media.Media.setData(Media.java:452)
at de.hybris.platform.jalo.media.Media.setData(Media.java:399)
at de.hybris.platform.hmc.media.MediaFileUploadEditorChip.setData(MediaFileUploadEditorChip.java:385)
at de.hybris.platform.hmc.media.ModalMediaFileUploadChip.setFile(ModalMediaFileUploadChip.java:118)
at de.hybris.platform.hmc.media.ModalMediaFileUploadChip.processEvents(ModalMediaFileUploadChip.java:222)
at de.hybris.platform.hmc.webchips.DisplayState.dispatchEvents(DisplayState.java:635)
at de.hybris.platform.hmc.webchips.DisplayState.extractEventsFromParameters(DisplayState.java:440)
at de.hybris.platform.hmc.webchips.DisplayState.processEvents(DisplayState.java:351)
at de.hybris.platform.hmc.webchips.MasterServlet.process(MasterServlet.java:192)
at de.hybris.platform.hmc.webchips.MasterServlet.doGet(MasterServlet.java:88)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:255)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$StatisticsGatewayFilter.doFilter(AbstractPlatformFilterChain.java:344)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.SecureMediaFilter.doFilter(SecureMediaFilter.java:111)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter.doFilter(DynamicCatalogVersionActivationFilter.java:90)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.DataSourceSwitchingFilter.doFilter(DataSourceSwitchingFilter.java:70)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.SessionFilter.doFilter(SessionFilter.java:96)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.RedirectWhenSystemIsNotInitializedFilter.doFilter(RedirectWhenSystemIsNotInitializedFilter.java:101)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.DynamicTenantSwitchingFilter.doFilterInternal(DynamicTenantSwitchingFilter.java:85)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.Log4JFilter.doFilter(Log4JFilter.java:44)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain$InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
at de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.doFilterInternal(AbstractPlatformFilterChain.java:155)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at de.hybris.platform.servicelayer.web.XSSFilter.processPatternsAndDoFilter(XSSFilter.java:342)
at de.hybris.platform.servicelayer.web.XSSFilter.doFilter(XSSFilter.java:290)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:613)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: de.hybris.platform.media.exceptions.MediaStoreException: com.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: dfggsdf), S3 Extended Request ID: sdfg/sdfg+sdfg/sdfg
at de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:149)
at de.hybris.platform.jalo.media.MediaDataStoreCommand.execute(MediaDataStoreCommand.java:141)
at de.hybris.platform.jalo.media.MediaManager.storeMedia(MediaManager.java:283)
at de.hybris.platform.jalo.media.Media$1.execute(Media.java:443)
at de.hybris.platform.tx.Transaction.execute(Transaction.java:1187)
at de.hybris.platform.tx.Transaction.execute(Transaction.java:1152)
at de.hybris.platform.jalo.media.Media.setData(Media.java:430)
... 63 more
Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Bad Request (Service: Amazon S3; Status Code: 400; Error Code: 400 Bad Request; Request ID: sdfgg), S3 Extended Request ID: sdfggfds/sdfggf+dfgfddfg/sdfggfd=
at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1077)
at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:725)
at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:460)
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:295)
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3736)
at com.amazonaws.services.s3.AmazonS3Client.getObjectMetadata(AmazonS3Client.java:1027)
at com.amazonaws.services.s3.AmazonS3Client.getObjectMetadata(AmazonS3Client.java:1005)
at de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:137)
... 69 more