Java 从dotnetweb应用程序启动JNLP

Java 从dotnetweb应用程序启动JNLP,java,.net,jnlp,Java,.net,Jnlp,Oracle建议使用JnlpDownloadServlet从Java web应用程序启动JNLP- 但是,我需要使用从dotnet应用程序动态生成的JNLP文件启动JNLP应用程序 我需要做什么才能启用此功能 将内容类型设置为application/x-java-jnlp-file 将JNLP文件作为下载输出 还有什么吗?如果您查看JNLPServlet源代码,您将看到它所做的只是使用.JNLP文件作为模板,并用占位符替换特定值。在.Net MVC或API控制器中没有什么特殊之处是无法复制的

Oracle建议使用JnlpDownloadServlet从Java web应用程序启动JNLP-

但是,我需要使用从dotnet应用程序动态生成的JNLP文件启动JNLP应用程序

我需要做什么才能启用此功能

  • 将内容类型设置为application/x-java-jnlp-file

  • 将JNLP文件作为下载输出


还有什么吗?

如果您查看JNLPServlet源代码,您将看到它所做的只是使用.JNLP文件作为模板,并用占位符替换特定值。在.Net MVC或API控制器中没有什么特殊之处是无法复制的。

JNLP文件只是一个XML文件,只要您的计算机上安装了Java Web Start,它就是一个可执行文件。这通常安装在机器上

从.NET Web应用程序的角度来看,您需要确保以下几点:

  • 正确的内容类型(应用程序/x-java-jnlp)。您可能需要向.NET服务器添加配置以启用此mime类型
  • 文件需要通过URL访问(有点明显,但为了完整性值得一提)
  • 该文件需要可下载。从概念上讲,它与返回任何其他文件相同
  • 对于无缝,需要设置浏览器以自动执行jnlp文件。有时,公司/默认浏览器设置不能做到这一点,您最终需要额外的点击。没什么大不了的,只是需要注意的事情
关于从.NET应用程序“配置”/“实现JNLP文件的实际服务”:

  • 您的最终目标是,返回的任何JNLP文件都可以通过JavaWebStart执行。在您进行此操作时,这将为您提供一个很好的可重复测试
  • 您需要确保.NET应用程序能够为JNLP应用程序所需的jar文件提供服务。通常,
    codebase
    属性和
    resources
    元素需要引用.NET应用程序。这应该有帮助

如何将x-java-jnlp添加到.NET服务器以启用mime类型?您所说的“浏览器需要设置为自动排除mime类型”是什么意思?@user93353执行,而不是排除(我认为您误读了)。。。某些浏览器不会使用JavaWebStart自动打开JNLP文件