This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Product Version = NetBeans IDE 7.4 (Build 201310111528) Operating System = Linux version 3.7.10-1.16-desktop running on amd64 Java; VM; Vendor = 1.7.0_45 Runtime = Java HotSpot(TM) 64-Bit Server VM 24.45-b08 as stated in: https://blogs.oracle.com/thejavatutorials/entry/signing_a_jnlp_file deploying and signing java webstart project (and netbeans RPC) should copy '[appname].JNLP' file to '[mainJAR].jar/META-JNLP/APPLICATION.JNLP' and then sign JAR file afterwards. currently netbeans doesn't have that ability. so when launching an JNLP app user gets demotivating message: "Although the application has a digital signature, the application's associated file (JNLP) does not have one. A digital signature ensures that a file is from the vendor and that it has not been altered."
Created attachment 142583 [details] IDE log
Hello, I have re-assinged to apisupport (because the reporter mentioned also platform app). I am not sure whether this is the same report as what you were solving recently. if so please mark as a duplicate. Thanks, David
Hello could you please attach screenshot or output from java console when this happen? And do you know what is [appname].jnlp in platform app? is it master.jnlp? And [mainJAR] is startup.jar? Thanks.
Created attachment 142963 [details] screenshot
Created attachment 142964 [details] VM logs
yes, in RPC its 'master.jnlp' should go into 'startup.jar'. But in RPC its more complicated, every 'jnlp' file should go into corresponding 'jar' file. for simple java project its 'launch.jnlp' should go to [mainJAR]. I`ve added screenshots and logs. (In reply to Martin Kozeny from comment #3) > Hello could you please attach screenshot or output from java console when > this happen? And do you know what is [appname].jnlp in platform app? is it > master.jnlp? And [mainJAR] is startup.jar? Thanks.
As I can see output from Java Console, there are warnings about third party jars, that their manifests does not contain application name, codebase and permissions attributes. It is connected with JDK 7_u45 and this problem is described in https://netbeans.org/bugzilla/show_bug.cgi?id=238098, b/c third party jars are already signed, I am unable to alter their manifest. Try to use please at this time JDK 7_u25 or 7_u21 and if problem persists, feel free to reopen the issue. Thanks. *** This bug has been marked as a duplicate of bug 238098 ***
Sorry try use JDK 7_u21, but I am afraid that this probably not help, b/c there will be still problem with signing...
(In reply to maciekos from comment #6) > yes, in RPC its 'master.jnlp' should go into 'startup.jar'. But in RPC its > more complicated, every 'jnlp' file should go into corresponding 'jar' file. > > for simple java project its 'launch.jnlp' should go to [mainJAR]. As I can see, we have only master.jnlp and branding.jnlp in RCP projects...
You closed this bug quickly. lack of manifest attibutes has nothing to do with bug I`ve issued. bug 238098 describes lack of manifest attributes(which still persist in my netbeans 7.4, so thats why its present in logs.). BUT this bug is about JNLP file not being properly signed. please see atached screenshot(side effect of not signing JNLP) and link which I`ve provided: https://blogs.oracle.com/thejavatutorials/entry/signing_a_jnlp_file its about how to properly sign JNLP for webstart deployement.
OK you're right. Could you please attach sample application to demonstrate the bug? I am unable to reproduce it. Thank you.
It is ok now, I am able to reproduce it.
I've put every jnlp into corresponding jars (master.jnlp to startup.jar) to JNLP-INF directory. Warning appears again and again. I've also leave the jnlp name, then change it to APPLICATION.JNLP, then to ${application.name}.jnlp and no success.
your JNLP files uses dynamic codebase?($$codebase)
Yes they are using dynamic codebase
when you use dynamic codebase the opening JNLP file is different than the one in JAR file. '$$codebase' is renamed by JVM with the opening location of opening JNLP file, but the '$$codebase' in JNLP in JAR remains intact. (warning message remains). so I dont have an idea how to use it with dynamic codebase. Ive only figured out without dynamic codebase. when using static codebase(like 'http://example.com'), main JNLP and JNLP in jar file remains the same all time, and only then it works.
And how about other variables like ${user.home} in master.jnlp...?
Please have a look at http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/signedJNLP.html You could use JNLP-INF/APPLICATION_TEMPLATE.JNLP for dynamic content. Have you got a working Patch for static codebase? We are waiting desperately. :-)
No I haven't. There are still other attributes in master.jnlp, that are referenced by variable like ${branding.token} and other app properties...
I tested today with with Java 8 and Netbeans 8. Problem still exists. I also want to note that this problem is operating system independent. No Netbeans Plattform JNLP application is able to run on current Java 7 or Java 8 runtime environments. Priority should be increased.
(In reply to jczwo from comment #18) > Please have a look at > http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/signedJNLP.html > > You could use JNLP-INF/APPLICATION_TEMPLATE.JNLP for dynamic content. > > Have you got a working Patch for static codebase? We are waiting > desperately. :-) Yeah I can use jnlp template for dynamic content, but template allows you to have '*' as values for elements and attributes, not ${} variables. I am still playing with that problem...
Fix: https://hg.netbeans.org/core-main/rev/ee227c0cfa40 If problem persists feel free to reopen.
Integrated into 'main-silver', will be available in build *201407230001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-silver/rev/ee227c0cfa40 User: Martin Kozeny <mkozeny@netbeans.org> Log: #238813: web start does not sign JNLP file.