on ‎2020 Apr 10 10:11 AM
The requirement is customer uploads the pdf and submit, hybris will attach the pdf in email and send it to destined email address.
This exception occurs when trying to invoke getStreamFromMedia from modelservice
it is working properly in Local, Dev and Quality environments but not in producton environment.
Quality environment is cluster environment as same as Production environment but this flow is working properly in Quality
Strange thing is it works properly once in a while in production which means it can pick the pdf from the location available in media model but mostly file not found and media not found exception
i couldn't even debug the issue since its not occuring in any environments. Please help.
Files are present in the location where it couldn't find.
Error Logs
de.hybris.platform.servicelayer.media.NoDataAvailableException: de.hybris.platform.media.exceptions.MediaNotFoundException: Media not found (requested media location: ha8/he2/8903867891742.pdf) at de.hybris.platform.servicelayer.media.impl.DefaultMediaService.getStreamFromMedia(DefaultMediaService.java:274) at com.core.register.email.UploadPdfEmailWithAttachmentAction.executeAction(UploadPdfEmailWithAttachmentAction.java:102) at de.hybris.platform.processengine.action.AbstractSimpleDecisionAction.execute(AbstractSimpleDecisionAction.java:50) at de.hybris.platform.processengine.definition.ActionNode.execute(ActionNode.java:154) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$3(ProcessengineTaskRunner.java:169) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$8(ProcessengineTaskRunner.java:562) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.runProcessTask(ProcessengineTaskRunner.java:171) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$2(ProcessengineTaskRunner.java:112) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$9(ProcessengineTaskRunner.java:535) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$7(ProcessengineTaskRunner.java:532) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.runProcessTaskInTransaction(ProcessengineTaskRunner.java:112) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$1(ProcessengineTaskRunner.java:102) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$6(ProcessengineTaskRunner.java:503) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.doRun(ProcessengineTaskRunner.java:102) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$0(ProcessengineTaskRunner.java:90) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.lambda$5(ProcessengineTaskRunner.java:467) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.run(ProcessengineTaskRunner.java:90) at de.hybris.platform.processengine.process.ProcessengineTaskRunner.run(ProcessengineTaskRunner.java:1) at de.hybris.platform.processengine.task.impl.ProcessengineTaskExecutionStrategy.run(ProcessengineTaskExecutionStrategy.java:30) at de.hybris.platform.task.impl.DefaultTaskService.processTask(DefaultTaskService.java:1612) at de.hybris.platform.task.impl.DefaultTaskService.process(DefaultTaskService.java:1516) at de.hybris.platform.task.impl.DefaultTaskService.processInTenant(DefaultTaskService.java:1485) at de.hybris.platform.task.impl.DefaultTaskService$5.run(DefaultTaskService.java:1363) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) at de.hybris.platform.core.threadregistry.RegistrableThread.internalRun(RegistrableThread.java:145) at de.hybris.platform.core.threadregistry.RegistrableThread.run(RegistrableThread.java:135) Caused by: de.hybris.platform.media.exceptions.MediaNotFoundException: Media not found (requested media location: ha8/he2/8903867891742.pdf) at de.hybris.platform.media.storage.impl.LocalFileMediaStorageStrategy.getAsStream(LocalFileMediaStorageStrategy.java:224) at de.hybris.platform.jalo.media.MediaManager$1.getStream(MediaManager.java:154) at de.hybris.platform.jalo.media.MediaManager.getMediaAsStream(MediaManager.java:370) at de.hybris.platform.jalo.media.MediaManager.getMediaAsStream(MediaManager.java:386) at de.hybris.platform.servicelayer.media.impl.DefaultMediaService.getStreamFromMedia(DefaultMediaService.java:270) ... 28 more Caused by: java.io.FileNotFoundException: /opt/hybris/persistent/data/media/sys_master/ha8/he2/8903867891742.pdf (No such file or directory) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at de.hybris.platform.media.storage.impl.LocalFileMediaStorageStrategy.getAsStream(LocalFileMediaStorageStrategy.java:220) ... 32 more
Request clarification before answering.
This issue has been resolved by myself.
Since it is a cluster environment,copying the created media from one node to another node took time, so i just delayed the email process for 5 mins.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.