views:

620

answers:

4

Up until recently, I was able to launch/open JNLP files in Firefox using Java web start.

Don't know what happened all of a sudden JNLP files stopped launching, a splash screen appears saying Java Starting... and then nothing happens. Even the Java Console in the browser and javacpl.cpl applet doesn't open.

Tried all possibilities: removed all older version and installed the latest JRE (java version "1.6.0_17"), still it doesn't work.

Done some googling for this problem, people suggested to start javaws.exe with -viewer option but same behavior (a splash screen appears saying "Java Starting..." and then disappears)

The problem is that I don't know any place (logs etc.) to look for to see what is causing the problem.

I am using WinXP SP3, and some of the screenshots below shows further info about my system. I can provide any other detail if required but please help me solve this problem.

alt text alt text alt text alt text alt text

A: 

I am not sure. But few possibilities...

  • You might be having a 64-bit VM, 32-bit needed to work with JWS, AFAIK

  • You should not install your JDK/JRE into somewhere having <space> in the path. Here there is a <space> in the middle of Program Files. This is more of a best practice thing, though

Adeel Ansari
@Vinegar How can I check which VM I have (32 or 64-bit) ?
akjain
For me `java -version` is showing me that I am using 64bit VM. In your case I guess, its not. You can do one thing. Try `java -d32` and update here whatever it says to you.
Adeel Ansari
C:\Documents and Settings\akjain>java -d32 Unrecognized option: -d32 Could not create the Java virtual machine.
akjain
How about java -d64? If that works then it means you are using 64 bit VM.
Adeel Ansari
Similar message: Unrecognized option: -d64Could not create the Java virtual machine.
akjain
Okay last thing. Install your JDK (it comes with JRE). Choose 32bit version. And this time install it in a path without `<space>`. Then give it a try.
Adeel Ansari
A: 

Have a look at what happens if you run javaws.exe directly from the command line.

Thorbjørn Ravn Andersen
C:\Documents and Settings\akjain>javaws - I get this http://img519.imageshack.us/img519/5225/javaws.jpg. As said above if I give "javaws somefile.jnlp" or "javaws -viewer somefile.jnlp" the java spash appears and then disappears.
akjain
Then try invoking with the "-verbose" flag...
Thorbjørn Ravn Andersen
also get rid of the JAVAWS_HOME variable
Thorbjørn Ravn Andersen
Deleted JAVAWS_HOME and then ran "javaws -verbose Subway.jnlp" This window appears (http://img689.imageshack.us/img689/535/javawsverbose.jpg) and then nothing happens.
akjain
Here is the JNLP file I used and some files which are getting frequently updated in Temp folder------>JNLP->http://sites.google.com/site/drjohnbmatthews/subway/Subway.jnlp?attredirects=0java_install_reg.log -> http://pastebin.com/m7d1a2f2javaws2 -> http://pastebin.com/m7d5d7740
akjain
A very common cause is a corrupted cache. The java control panel allows you to clean and even disable the cache use.
Thorbjørn Ravn Andersen
A: 

Is this an application to which you have the code? Java 6u14 included a change to the way it handles jar security that for us caused very similar issues. If your jars are signed and work with Java 6u13 or below, you might consider either refactoring your code to work around this update or requiring Java 6u13 or below. Unfortunately I don't recall exactly what we did to resolve the issue - it was panic mode at the time.

Again, if you have the code you have tools to work with. You can put in System.out.println statements in your startup routines - anything console output is displayed in the command window when you run the JNLP from the command line. Otherwise you might consider using a nice logger like log4j to get a better idea of the point of failure.

You may also consider removing the application entirely and downloading it anew. Java Web Start has a Control Panel applet that allows you to see the URL your app is downloading from (could be the wrong one), uninstall the app, set security options, etc.

spork
@spork - NO, I do not have the code, and this is happening with every JNLP I try to run from browser or download and run using Java Web Start.
akjain
Then what I'd suggest is rolling back your JRE to an earlier version (I'd go to Update 13 just because of the security issue I mentioned in my answer) and see if you can run a JWS application at that point. You might also consider using JWS applications found on Sun's Java tutorial pages for your tests rather than programs from private vendors - Sun's apps are more likely to be simple and working.
spork
A: 

It may be irrelevant, but the referenced JAR had been signed with an expired fake certificate; it has recently been signed with a new fake certificate. Also, the .jnlp file specifies a superfluous request for full access, which may be removed:

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

The security specification makes it convenient to compare the responses from JWS versus a browser. For the latter, also check any NoScript (or similar) settings.

trashgod
@trashgod - As said in one of the response's comments (http://stackoverflow.com/questions/1912676/what-is-causing-the-problem-i-am-not-able-launch-jnlp-aaplications-using-java/1914936#1914936) - I am not able to launch any JNLP file and not just the referenced JNLP.
akjain
@akjain: Yes, sorry I can't address the broader problem; I just didn't want the updated signature to confound the issue. I'd have hoped that clearing the JWS cache might help. On my platform, I've resorted to nuking the cache from orbit, just to be sure. You might also check the assoc and ftype for jnlp, as suggested here: http://stackoverflow.com/questions/354664/executing-a-jar-on-vista-with-a-double-click.
trashgod