I just upgraded a legacy application from Tomcat 7 to Tomcat 9. It's deployed as a war file. I'm facing a weird issue with audio files playback.
When loading a page that contains an audio file. First time Tomcat returns 404 error but if reloading the page, audio file is loaded properly and no error from Tomcat. I'm using html 5 audio control to display the file. All other static resources(images, css and js files) are working without any issues. Only audio files are having this issue. I enabled the logs for DefaultServlet in Tomcat. Follwong is the log entry when I try to open the audio file first time. I can see 404 being returned from server in Chrome dev tools. *09-Mar-2024 20:12:50.747 INFO DefaultServlet.serveResource: Serving resource '/wav/2B916004DFE94FA40446429E1671C893_0001053.mp3' headers and data* Following is the log for 2nd attempt. This time audio is available and playable in browser. *09-Mar-2024 20:13:00.371 INFO DefaultServlet.serveResource: Serving resource '/wav/2B916004DFE94FA40446429E1671C893_0001053.mp3' headers and data * *09-Mar-2024 20:13:01.372 INFO DefaultServlet.serveFile: contentType='audio/mpeg'* Here is the audio control code: <div id="audioContainer" style="height:65px; width:100%; visibility:visible; "> <div id="jobAudio" style="height:45px; width: 100%; left:0px; bottom:0;" > <audio controls controlsList="nodownload" style="width: 100%;" > <source src="/wav/2B916004DFE94FA40446429E1671C893_0001053.mp3" type="audio/mpeg" > </audio> </div> </div> I've tried relative path and full path but result is the same in both cases. I've spent days trying to solve this but no luck :( I would really appreciate any guidance to solve this issue. Thanks!