Java JNLP文件中的Spring@PropertySource位置字符串声明
我们得到了一个名为BaseByBase的JavaWebStart程序,它有一个外部内部库,其中包含以下spring属性源标记Java JNLP文件中的Spring@PropertySource位置字符串声明,java,spring,jnlp,Java,Spring,Jnlp,我们得到了一个名为BaseByBase的JavaWebStart程序,它有一个外部内部库,其中包含以下spring属性源标记@PropertySource(“${appclient}”)。“${appclient}”的值在BaseByBase的JNLP文件中指定为 当我通过它的jnlp文件运行BaseByBase时,一切正常。我们还得到了另一个jnlp程序VOCs,它可以启动自己的BaseBayBase。VOCs的JNLP文件还包含,它可以毫无问题地启动BaseByBase 现在,我们正试图让我
@PropertySource(“${appclient}”)
。“${appclient}”
的值在BaseByBase的JNLP文件中指定为
当我通过它的jnlp文件运行BaseByBase时,一切正常。我们还得到了另一个jnlp程序VOCs,它可以启动自己的BaseBayBase。VOCs的JNLP文件还包含
,它可以毫无问题地启动BaseByBase
现在,我们正试图让我们的第三个程序GATU也运行BaseBayBase。Gatu具有与VOCs相同的代码来启动BaseByBase,其JNLP文件也包含
。如果我在本地运行Gatu,一切都会按预期运行。但是,当我从它的JNLP运行GATU并从它启动BaseByBase时,我得到以下错误初始化应用程序上下文失败:java.lang.IllegalArgumentException:无法解析字符串值[${appclient}]
中的占位符“appclient”
我尝试使用System.setProperty
设置字符串值,但没有解决问题。更改了库代码,使propertysource指向属性文件的位置,但这也没有做到
关于如何解决这个问题有什么想法吗?我们的JNLP文件是经过签名的,所以我认为这可以解决通过JNLP设置不安全系统属性的问题。天哪。。喘口气(或者换句话说,使用更多的段落。不要害羞,它们是免费的。)检查类路径中的文件?
value={classpath:appclient.properties})
当我在本地运行程序时,没有传递告诉文件位置的VM选项。文件已成功检索,但当我部署并通过jnlp运行时,不起作用。
@PropertySource(value={"classpath:appclient.properties"})