点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们
我目前正在为我们的媒体评估Amazon S3存储桶解决方案。 每次我要保存媒体时,都会出现此错误,并且该媒体将不会持久保存。 奇怪的是,上传到存储桶的工作正常。
有什么想法我在做什么错吗?
HMC错误::
我的配置:
#Amazon S3存储桶
#放入S3策略的Spring bean ID,该ID使逻辑负责hybris和Amazon S3之间的通信
media.folder.s3medias.storage.strategy = s3MediaStorageStrategy
media.folder.s3medias.url.strategy = s3MediaUrlStrategy
#设置URL有效期为5分钟
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
亚马逊:
已保存媒体的存储桶:
错误:
原因:de.hybris.platform.media.exceptions.MediaStoreException:com.amazonaws.services.s3.model.AmazonS3Exception:Bad Request(Service:Amazon S3; Status Code:400; Error Code:400 错误的请求;请求ID:dfggsdf),S3扩展请求ID:sdfg/sdfg + sdfg/sdfg
在de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:149)
完整错误:
我认为警告可以忽略。
WARN [hybrisHTTP32] [AmazonS3Client]尝试通过AWS V4身份验证将请求重新发送到testmspmediabucket.s3-external-1.amazonaws.com。 为避免将来出现此警告,请使用特定于区域的终结点来访问需要V4签名的区域中的存储桶。
================================================== =====================
MasterServlet中的异常
时间:2018年1月25日星期四21:00:39
查询字符串:WID = MC0x479&MC0x478_file =%2FProjects%2Fmicrospot-B2C%2Fhybris%2Ftemp%2Fhybris%2Fhmc_upload_file1801757625646233598.tmp&MC0x478_filename = c74461ae2a9917a2482ac7b53f195b3c6e2fdd59e778c673256fb29d1b07f181.jpg&取消=假tempfilename = upload_MC0x478.tmp&MC0x478_保存=真
de.hybris.platform.jalo.JaloSystemException:com.amazonaws.services.s3.model.AmazonS3Exception:错误的请求(服务:Amazon S3;状态代码:400;错误代码:400错误的请求;请求ID:fsgdfg),S3扩展 请求ID:sdfg/KHcvHkfnCuya7DDakAX + sdfg/sdfg = [HY--1]
在de.hybris.platform.jalo.media.Media.setData(Media.java:452)
在de.hybris.platform.jalo.media.Media.setData(Media.java:399)
在de.hybris.platform.hmc.media.MediaFileUploadEditorChip.setData(MediaFileUploadEditorChip.java:385)
在de.hybris.platform.hmc.media.ModalMediaFileUploadChip.setFile(ModalMediaFileUploadChip.java:118)
在de.hybris.platform.hmc.media.ModalMediaFileUploadChip.processEvents(ModalMediaFileUploadChip.java:222)
在de.hybris.platform.hmc.webchips.DisplayState.dispatchEvents(DisplayState.java:635)
在de.hybris.platform.hmc.webchips.DisplayState.extractEventsFromParameters(DisplayState.java:440)
在de.hybris.platform.hmc.webchips.DisplayState.processEvents(DisplayState.java:351)
在de.hybris.platform.hmc.webchips.MasterServlet.process(MasterServlet.java:192)
在de.hybris.platform.hmc.webchips.MasterServlet.doGet(MasterServlet.java:88)
在javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
在javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:255)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ StatisticsGatewayFilter.doFilter(AbstractPlatformFilterChain.java:344)处
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.SecureMediaFilter.doFilter(SecureMediaFilter.java:111)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.DynamicCatalogVersionActivationFilter.doFilter(DynamicCatalogVersionActivationFilter.java:90)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.DataSourceSwitchingFilter.doFilter(DataSourceSwitchingFilter.java:70)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.SessionFilter.doFilter(SessionFilter.java:96)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.RedirectWhenSystemIsNotInitializedFilter.doFilter(RedirectWhenSystemIsNotInitializedFilter.java:101)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.DynamicTenantSwitchingFilter.doFilterInternal(DynamicTenantSwitchingFilter.java:85)
在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.Log4JFilter.doFilter(Log4JFilter.java:44)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain $ InternalFilterChain.doFilter(AbstractPlatformFilterChain.java:225)
在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.doFilterInternal(AbstractPlatformFilterChain.java:155)
在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
在org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
在org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在de.hybris.platform.servicelayer.web.XSSFilter.processPatternsAndDoFilter(XSSFilter.java:342)
在de.hybris.platform.servicelayer.web.XSSFilter.doFilter(XSSFilter.java:290)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:613)
在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:611)
在org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run(JIoEndpoint.java:316)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)
在org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)
在java.lang.Thread.run(Thread.java:745)
引起原因:de.hybris.platform.media.exceptions.MediaStoreException:com.amazonaws.services.s3.model.AmazonS3Exception:错误的请求(服务:Amazon S3;状态代码:400;错误代码:400错误的请求;请求ID: dfggsdf),S3扩展请求ID:sdfg/sdfg + sdfg/sdfg
在de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:149)
在de.hybris.platform.jalo.media.MediaDataStoreCommand.execute(MediaDataStoreCommand.java:141)
在de.hybris.platform.jalo.media.MediaManager.storeMedia(MediaManager.java:283)
在de.hybris.platform.jalo.media.Media $ 1.execute(Media.java:443)
在de.hybris.platform.tx.Transaction.execute(Transaction.java:1187)
在de.hybris.platform.tx.Transaction.execute(Transaction.java:1152)
在de.hybris.platform.jalo.media.Media.setData(Media.java:430)
...还有63个
引起原因:com.amazonaws.services.s3.model.AmazonS3Exception:错误的请求(服务:Amazon S3;状态代码:400;错误代码:400错误的请求;请求ID:sdfgg),S3扩展请求ID:sdfggfds/sdfggf + dfgfddfg/sdfggfd =
在com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1077)
在com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:725)
在com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:460)
在com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:295)
在com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3736)
在com.amazonaws.services.s3.AmazonS3Client.getObjectMetadata(AmazonS3Client.java:1027)
在com.amazonaws.services.s3.AmazonS3Client.getObjectMetadata(AmazonS3Client.java:1005)
在de.hybris.platform.amazon.media.storage.S3MediaStorageStrategy.store(S3MediaStorageStrategy.java:137)
...更多69
(275.7 kB)
我的配置是错误的。创建了一个仅支持V4身份验证的存储区,更改为支持其工作的V2的存储区。
在此处找到此帖子:
https://hortonworks.github.io/hdp-aws/ s3-trouble/index.html
嗨,帕特里克,
我遇到同样的问题。
能否请您详细解释如何解决此问题。
感谢Anurag
一周热门 更多>