[SOLVED] vendor property in j2se tag does not supersede default value
Posted: 08 Oct 2020, 19:05
When the property ows.jvm.manager.server.allowFromJnlp is set to true, the JVM list from the server given in the j2se tag (with property "href") supersedes the default JVMs server list from the default server (ows.jvm.manager.server.default).
-> This allows us to provide a list of JVMs by setting ows.jvm.manager.server.allowFromJnlp to true and locking that property. As it will only use the server given in the property, this also ensures that only JVMs provided by us will be used. The customer can still use other OWS applications which get their JVM from the default server and he can change the setting without affecting our deployment.
When the property ows.jvm.manager.vendor.allowFromJnlp is set to true, the vendor value set in the property does not seem to supersede the default vendor (ows.jvm.manager.vendor).
Is that expected behavior?
If it is, I see a small problem here. When I want to make sure, that our application can always run, I do have to set the property ows.jvm.manager.vendor to '*' (as we only provide JVMs from one vendor) and lock the property. Thus a client could not set anything different anymore. If the value from the jnlp file would supersede the default value, this would not be necessary.
Here is a log-excerpt, where it finds the vendor ('*') specified in the j2se tag in the jnlpx file, but still looks for the specific JMV vendor set as default (which then fails, because the vendor is wrong):
Error-Dialog message: Es konnte keine passende JVM zum Ausführen der Anwendung gefunden werden.
Trying to find local Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64' active: 'false'
No remote runtime found, will check deactivated local runtimes.
Received 3 possible runtime definitions from server
Using NO_PROXY
Using NO_PROXY
Endpoint to request for Java runtimes: http://127.0.0.1/jvms.json
Trying to find remote Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64'
No local runtime found, will try to find remote runtime
Trying to find local Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64' active: 'true'
Trying to find Java runtime. Requested version: '11+', vendor: 'Azul Systems, Inc.', os: 'WIN64', server-url: 'http://127.0.0.1/jvms.json'
searching for JRE with version string '11+' and vendor '*'
...
-> This allows us to provide a list of JVMs by setting ows.jvm.manager.server.allowFromJnlp to true and locking that property. As it will only use the server given in the property, this also ensures that only JVMs provided by us will be used. The customer can still use other OWS applications which get their JVM from the default server and he can change the setting without affecting our deployment.
When the property ows.jvm.manager.vendor.allowFromJnlp is set to true, the vendor value set in the property does not seem to supersede the default vendor (ows.jvm.manager.vendor).
Is that expected behavior?
If it is, I see a small problem here. When I want to make sure, that our application can always run, I do have to set the property ows.jvm.manager.vendor to '*' (as we only provide JVMs from one vendor) and lock the property. Thus a client could not set anything different anymore. If the value from the jnlp file would supersede the default value, this would not be necessary.
Here is a log-excerpt, where it finds the vendor ('*') specified in the j2se tag in the jnlpx file, but still looks for the specific JMV vendor set as default (which then fails, because the vendor is wrong):
Error-Dialog message: Es konnte keine passende JVM zum Ausführen der Anwendung gefunden werden.
Trying to find local Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64' active: 'false'
No remote runtime found, will check deactivated local runtimes.
Received 3 possible runtime definitions from server
Using NO_PROXY
Using NO_PROXY
Endpoint to request for Java runtimes: http://127.0.0.1/jvms.json
Trying to find remote Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64'
No local runtime found, will try to find remote runtime
Trying to find local Java runtime. Requested version: '11+' Requested vendor: 'Azul Systems, Inc.' requested os: 'WIN64' active: 'true'
Trying to find Java runtime. Requested version: '11+', vendor: 'Azul Systems, Inc.', os: 'WIN64', server-url: 'http://127.0.0.1/jvms.json'
searching for JRE with version string '11+' and vendor '*'
...