Java Webstart certificate error with JNLP version

Hi, I have a problem with Java Webstart. We have a JNLP configuration where version control is enabled, i.e.:

 <property name="jnlp.versionEnabled" value="true"/>

and we use the version numbers of each ban, for example:

<jar href="project.jar" version="2.5.7.0"/>.

We also sign our applications using the Maven Jar signer plugin.

All is well while you speak.

Well, every time we make a new version of the application, we change the JNLP file with new version numbers for each jar (not all versions of the jars change), but as in the project.jar example above, we can say that this version number increases with 2.5.7.0 to 2.5.7.1. eg,

<jar href="project.jar" version="2.5.7.1"/>.

When our users download a new application through a JNLP file, they receive the following error:

#### Java Web Start Error:
#### JAR resources in JNLP file are not signed by same certificate

I added an extra DEBUG to Webstart and found the following error in Java Concole:

security: Validating cached jar url=http://servername/lib/project_V2.5.7.1.jar ffile=C:\Documents and Settings\username\Application Data\Sun\Java\Deployment\cache\6.0\10\57344cca-719709af-2.5.7.1- com.sun.deploy.cache.CachedJarFile@11e1bbf
security: Have 0 common certificates after processing http://servername/lib/project.jar
network: Remove cache entry: http:///lib/project__V2.5.7.1.jar

, Webstart jar project_V2.5.7.1.jar( ), /.

JAR, , - , :

JAR resources in JNLP file are not signed by same certificate.

, Webstart! , webstart - .

- ?

+5
3

, , , , 2.5.7.0 2.5.7.1, , , - , . , , :

, , META-INF , .

, .

+1

" , , JNLP ( jars)"

?

jar, jar, jar , , .

0

I also decided to subscribe to the two jar files included in my jnlp file, with the same certificate that I used for my banner.

This is my jnlp file:

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://10.37.177.100:8085/AFM/resources/client/" href="AFMTray.jnlp">
<information>
    <title>AFMTray</title>
    <vendor>andreagirardi.it</vendor>
</information>

<security>
    <all-permissions />
</security>

<resources>
    <j2se version="1.4+" />
    <jar href="AFMTray.jar" />
    <property name="jnlp.versionEnabled" value="true"/>
</resources>

<resources os="Windows" arch="x86">
    <jar href="swt-windows.jar" />
</resources>

<resources os="Mac\ OS\ X" arch="x86_64">  
    <jar href="swt-osx.jar" />
</resources>  

<resources os="Mac\ OS\ X" arch="i386 x86">  
    <jar href="swt-osx.jar" />
</resources>  

<application-desc main-class="com.afm.TryLuncher" />

<shortcut online="true">
    <desktop/>
    <menu submenu="Esecuzione automatica"/>
</shortcut>

So, I signed swt-osx.jar and swt-windows.jar with the same certificate as for AFMTray.jar

0
source

All Articles