Java Webstart

Joined
Jun 19, 2009
Messages
1
Reaction score
0
Points
1
I have an application that uses a .jnlp file which since updating OS X yesterday (Java update included) now opens the file in Dashcode instead of using Java Webstart. I usually launch the app using a shortcut saved to my desktop (webstart.jnlp) which OS X has always launched just fine. Seeing as how that's true, I don't see this as a plugin issue in Firefox or Safari. It seems to be related to OS X itself. Interestingly, if I launch javaws manually from the terminal prompt (javaws /Users/Ryan/Desktop/webstart.jnlp) it launches just fine. Any ideas? I did have to set my Java version to 1.5 (64 bit) so that this app will launch.

Thanks!
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
Right-click the jnlp file, select "Get Info" and under "Open With:" in the info window, change it back to Java Web Start (or whatever it happens to be called).
 
Joined
Jun 21, 2009
Messages
2
Reaction score
0
Points
1
Neither solution seems to work

lsregister is not a command that I can find and if I try to set the default application to open jnlp files to as javaws, it simply won't let me. Anyone else been able to get around this?
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
lsregister is not a command that I can find and if I try to set the default application to open jnlp files to as javaws, it simply won't let me. Anyone else been able to get around this?
Try: /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister (yes, it's that long). That's the only lsregister I can find on my machine.
 
Joined
Jun 21, 2009
Messages
2
Reaction score
0
Points
1
Yep, that did it - it reset the .jnlp default to java web start as it should be. The proper path for lsregister actually goes though the symbolic links so that the latest version is used. Here is what I used:

/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister

I used "Current" instead of "A" in the path you specified, and also used "Support" in the ".../LaunchServices.framework/" directory as it is the link to the latest version of the support directory for that framework - Apple loves their symbolic links for their packages.

thanks again - all is good.
 
Joined
Jun 24, 2009
Messages
2
Reaction score
0
Points
1
There's another problem introduced by the recent Java for 10.5 Update 4 (at least for us PPC users) and that's the loss of the Java Web Start GUI. Prior to Update 4 we could use Java Web Start to select a jnlp downloaded Java program and create a desktop version for running offline. Update 4 removed the Java Web Start GUI and using an old copy doesn't work as it's not compatible with Update 4.

Is there a version of Java Web Start GUI available somewhere that works with Update 4 or is there a way to use javaws in Terminal to achieve the same effect?

Thanks for any help.
 
Joined
Jun 26, 2009
Messages
1
Reaction score
0
Points
1
Thanks for the info. I had the same problem and lsregister fixed the jnlp file association.

I found a way (maybe not the best?) to create a Desktop application using Automator: (Open Automator ; Utilities | Run Shell Script ; type in "javaws [jnlp_path]"; Save As | File Format Application). Then use Icns2Rsrc.app to change icon.
 
Joined
Jun 28, 2009
Messages
1
Reaction score
0
Points
1
There's another problem introduced by the recent Java for 10.5 Update 4 (at least for us PPC users) and that's the loss of the Java Web Start GUI. Prior to Update 4 we could use Java Web Start to select a jnlp downloaded Java program and create a desktop version for running offline. Update 4 removed the Java Web Start GUI and using an old copy doesn't work as it's not compatible with Update 4.

Is there a version of Java Web Start GUI available somewhere that works with Update 4 or is there a way to use javaws in Terminal to achieve the same effect?

Thanks for any help.

/Applications/Utilities/Java Preferences

choose the 'Network' tab, then 'View Cache Files' button.

:)
 
Joined
Jul 28, 2009
Messages
5
Reaction score
0
Points
1
Yep, that did it - it reset the .jnlp default to java web start as it should be. The proper path for lsregister actually goes though the symbolic links so that the latest version is used. Here is what I used:

/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister

I used "Current" instead of "A" in the path you specified, and also used "Support" in the ".../LaunchServices.framework/" directory as it is the link to the latest version of the support directory for that framework - Apple loves their symbolic links for their packages.

thanks again - all is good.

Chaps, I'm having this same problem and followed your advice. However, I get as far as the Support folder but am not being allowed to select lsregister. What am I doing wrong?
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
You have to launch lsregister from the command line as it is a CLI based tool. Open up Terminal and type in:
Code:
/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister
This will execute lsregister. Note that you may have to add parameters to that - the previous snippet was just to show you how to execute the program itself.
 
Joined
Jul 28, 2009
Messages
5
Reaction score
0
Points
1
Thanks vansmith. Please bear with me: I am no techie. I put your line into Terminal. Lots of text rolled down. Then I went back to the 'Open With' scheme, but no difference: I still can't select lsregister.
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
Based on here, execute the following:
Code:
/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
Launching lsregister by itself with no parameters does nothing (as you found out). The text you saw on the screen was lsregister informing you that you needed to give it some options so it knew what you wanted it to do.
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
Open up a Terminal window (/Applications/Utilities/Terminal.app) and execute the command in my previous post. If it gives you an error to do with permissions, simply add "sudo" (without the quotation marks) to the beginning like so:
Code:
sudo /System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
You will then be asked for your password.
 
Joined
Jul 28, 2009
Messages
5
Reaction score
0
Points
1
I know how to open Terminal, but how do I "execute the command in my previous post". I thought that was what I already did. I copied your line "/System/Library/Frameworks/... etc" into Terminal, and nothing doing. So what do I need to do different now?
 

vansmith


Retired Staff
Joined
Oct 19, 2008
Messages
19,966
Reaction score
606
Points
113
Location
Queensland
Your Mac's Specs
Too many devices to list
Open a Terminal window and enter:
Code:
sudo /System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
Press enter, enter your password and you'll be done. You may not need the sudo at the beginning so try entering the above command without it first.

If it was successful, it may not return anything (ie. print anything to the Terminal window). Most CLI programs do not print anything to the screen if they execute successfully. If the command is successful and you don't notice anything new, try logging out and back in.
 
Joined
Jul 28, 2009
Messages
5
Reaction score
0
Points
1
Ah, right, got it. That worked. Thanks so much vansmith, especially for talking me through it, and sorry for being so pathetic.
 
Joined
Jul 29, 2009
Messages
1
Reaction score
0
Points
1
Can't you just open the jnlp with the application Java Web Start.app?
It's in /System/Library/CoreServices/Java Web Start.app.
Right click on the jnlp file and click open with and choose the application above.
That's it!
;D
 
Joined
Jul 29, 2009
Messages
1
Reaction score
0
Points
1
Thanks vansmith!

I had the same problem and your instructions we awesome...I am up and running now. Thanks!:D
 

Shop Amazon


Shop for your Apple, Mac, iPhone and other computer products on Amazon.
We are a participant in the Amazon Services LLC Associates Program, an affiliate program designed to provide a means for us to earn fees by linking to Amazon and affiliated sites.
Top