如何从浏览器 URL 访问位于 java 服务器的 PDF/image/video 文件?

how to access PDF/image/video file located in java server from a browser URL?

我的 GlassFish java 应用程序服务器上有一个 mp4 视频。我用什么 URL 在浏览器中访问它?

服务器上应用中的视频路径为:

myapp/WEB-INF/videos/myvideo.mp4

我尝试将其添加到我的 web.xml 文件中:

<servlet>
  <servlet-name>myvideo</servlet-name>
  <servlet-class>videos.myvideo.mp4</servlet-class>
</servlet>
<servlet-mapping>
  <servlet-name>myvideo</servlet-name>
  <url-pattern>/myvideo</url-pattern>
</servlet-mapping>

并重新启动服务器,然后转到 URL:https://www.example.com/myapp/myvideo 但那只是给出了这个错误:

java.lang.ClassNotFoundException: videos.myvideo.mp4

显然它不是 servlet,但不确定还可以尝试什么。

为什么您尝试将视频作为 servlet 而不是静态资产(如图像)来访问?使用servlet映射显然是错误的。

相反,如果您在 GlassFish 中有一个 运行 WebApp,您应该可以通过 https://www.example.com/myapp/videos/myvideo.mp4 访问它,前提是您已将视频文件夹放在您的 webapp 的 j2ee 根目录下。

j2ee root 将在您的 application.xml 中配置为 web-uri。在您的情况下,myapp 文件夹很可能是您的 j2ee 根目录。因此,将您的视频移到一个文件夹中。

(已将评论 'discussion' 转换为答案)。