I have mostly gotten this to work.

I can post the code if anyone is interested. Its biggest help is when you don't know what resources you have in the jar (images, sounds, etc).
A weird thing is that if you run code from a jar its url will start -
file:/c:/stuff/more/application.jar!/MyClass.class
(Linux would just drop the c: part)
If you get the URL when you are running from JWS as a jar you lose the first /. I've no idea why.
If anyone would like me to post the code, let me know.
As an aside, here's why I don't 'know' what resources I have.
Imagine you are writing an app which alters photos. So you have a dir which contains photos of all kinds. You want to be able to just drop a new photo in the directory and have your program load it up.
If you want the convenience and flexability of not having to hard code your image names, you need some way of figuring out what they are at runtime. If you are running from inside a jar file, then your images are now inside the jar with you as well, so you can use the normal File() classes to determine what you have. You need to figure out where 'you' are, then open up your jar and locate the jar entries, which are dirs when you extract them. You get the idea.
Regards,
Dr. A>