Tomcat 正在提供内容类型为 "text/html" 而不是 JNLP 内容类型的 JNLP 文件
Tomcat is serving JNLP Files with the content type "text/html" instead of the JNLP content type
我已经为 java 网络启动应用程序设置了 Tomcat。现在我在静态 html 页面上提供 .JNLP
文件下载(服务器仅供内部使用)。但是当我点击一个文件而不是下载它时,它会打开并在浏览器中显示 xml 代码。
使用 fiddler 我发现该文件将是内容类型为 text/html
而不是 application/x-java-jnlp-file
.
的服务器
我已经在 tomcat web.xml 中配置了以下内容:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<mime-mapping>
<extension>jnlp</extension>
<mime-type>application/x-java-jnlp-file</mime-type>
</mime-mapping>
为什么 Tomcat 提供内容类型错误的文件?
我找到了解决方案。
我在 tomcat 的全局 web.xml
中粘贴了 mime-mapping
标签。重新启动服务器并清除浏览器缓存后,它按预期工作。
我学到了什么:不需要额外的 servlet 来下载 JNLP 文件。
我已经为 java 网络启动应用程序设置了 Tomcat。现在我在静态 html 页面上提供 .JNLP
文件下载(服务器仅供内部使用)。但是当我点击一个文件而不是下载它时,它会打开并在浏览器中显示 xml 代码。
使用 fiddler 我发现该文件将是内容类型为 text/html
而不是 application/x-java-jnlp-file
.
我已经在 tomcat web.xml 中配置了以下内容:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<mime-mapping>
<extension>jnlp</extension>
<mime-type>application/x-java-jnlp-file</mime-type>
</mime-mapping>
为什么 Tomcat 提供内容类型错误的文件?
我找到了解决方案。
我在 tomcat 的全局 web.xml
中粘贴了 mime-mapping
标签。重新启动服务器并清除浏览器缓存后,它按预期工作。
我学到了什么:不需要额外的 servlet 来下载 JNLP 文件。