Since Java 7 update 25, I have an issue where my client Java application, downloaded with Java Web Start, can no longer connect to a remote server. (The client uses remote EJB to connect various servers). The issue I believe is that the client application is being blocked by security features of this Java update.
A very quick (random?) fix around the problem is to show the Java console. If the Java console is enabled to be shown, the client application can connect fine.
Although showing the Java console is a quick fix, it's not one we particularly want to keep asking customers to do. I understand we may need to define the Codebase and Permissions in the manifest file as described here: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/no_redeploy.html..
I have defined the Codebase and Permissions in the manifest of the client jar's we build ourselves. I believe this has worked as we no longer see "Missing Codebase manifest attribute for...." in the console for our own jar's. However, the application still cannot connect out. I'm stumbling around somewhat on this issue and trying various things in an attempt to get this to work. Assuming i'm on the right lines and the problem is some jars missing the Codebase and Permissions in their manifests, my question is, should I and how can I modify the manifest of 3rd party jars to include this information? For example, the client app requires many JBoss and EJB client jars - do I need to somehow modify the manifest of all of these jars to include the codebase and permissions?
It goes without saying that all the jars are signed - the application would not start at all if there was a problem here. So the application starts with it's login box - but it simply cannot connect out to the servers.
If anybody can offer any help on this issue i'd be most grateful. As a quick fix, is there a way to get this to work via adjusting Control Panel settings (other than showing the console)? I have played with a lot but not stumbled on a way to get this to work other than showing the console, although ideally i'd like to be able to get this to work without having to do any tweaks to clients Java control panel.