Rene_van_O
asked on
Java Web Start, modify splash screen does not work
I have a problem with the splash screen not displaying. This is the first relevant portion of my jnlp:
<jnlp spec="1.5+" codebase="http://www.i-modulas.nl/downloads/"
href="imodulas.jnlp">
<information>
<title>i-Modulas Thin Client</title>
<vendor>i-Modulas Software BV</vendor>
<icon kind="splash" href="http://www.i-modulas.nl/downloads/javathinsplash.jpg"/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.5+"/>
<jar href="isrun.jar"/>
<property name="iscobol.conf" value="http://www.i-modulas.nl/downloads/javaclientproperties.txt"/>
</resources>
<resources os="Windows">
<property name="swing.defaultlaf" value="com.sun.java.swing. plaf.windo ws.Windows LookAndFee l" />
</resources>
<resources os="Linux">
<property name="swing.defaultlaf" value="com.sun.java.swing. plaf.gtk.G TKLookAndF eel" />
</resources>
...
The application starts normal and uses a different look and feel under Windows as under Linux, but I do not see the splash screen. I tried different ways of referencing to the picture and I also tried using a .gif format. It never worked!
What am I doing wrong? You can check it out at www.i-modulas.nl/installatie/javaclient. Use the link just above 'Java starting'. Any suggestions are welcome!
René
<jnlp spec="1.5+" codebase="http://www.i-modulas.nl/downloads/"
href="imodulas.jnlp">
<information>
<title>i-Modulas Thin Client</title>
<vendor>i-Modulas Software BV</vendor>
<icon kind="splash" href="http://www.i-modulas.nl/downloads/javathinsplash.jpg"/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.5+"/>
<jar href="isrun.jar"/>
<property name="iscobol.conf" value="http://www.i-modulas.nl/downloads/javaclientproperties.txt"/>
</resources>
<resources os="Windows">
<property name="swing.defaultlaf" value="com.sun.java.swing.
</resources>
<resources os="Linux">
<property name="swing.defaultlaf" value="com.sun.java.swing.
</resources>
...
The application starts normal and uses a different look and feel under Windows as under Linux, but I do not see the splash screen. I tried different ways of referencing to the picture and I also tried using a .gif format. It never worked!
What am I doing wrong? You can check it out at www.i-modulas.nl/installatie/javaclient. Use the link just above 'Java starting'. Any suggestions are welcome!
René
btw: I had a lot of problems with this issue, but they never got solved. Check out my question and the answers here:
https://www.experts-exchange.com/questions/22977392/Change-splash-screen-image-in-Java-WebStart.html
Again, you dont have that problem, since your splash screen shows fine.
ASKER
Do you mean that when you try my javaclient link, you get a modified splash screen??? I myself I just get the standard Java 6 splash screen!
This is really interesting. I get the splash screen at home (I remember a white picture with some green text on it), now I tried it from work and I cant get it anymore.
Did you change anything? If you didnt, its got something to do with client side settings. Maybe java version.
ASKER
Dejanpazin, no I did not change anything. But I'm glad you now also find out what my problem is. The green text on the white background is the same style as on our website, so yes, you got the right splash screen.
About the Java versions, I have Java 6 update 10 (beta) installed because I earlier experienced problems with JWS, which were solved with installing this prerelease. What versions do you have installed at work and at home?
About the Java versions, I have Java 6 update 10 (beta) installed because I earlier experienced problems with JWS, which were solved with installing this prerelease. What versions do you have installed at work and at home?
ASKER
I searched a little bit further and managed to get the JWS Console. These are the deployment properties:
Dump deployment properties ...
-------------------------- ---------- ---------- ------
deployment.browser.path = C:\Program Files\Internet Explorer\iexplore.exe
deployment.browser.vm.iexp lorer = true
deployment.browser.vm.mozi lla = true
deployment.cache.enabled = true
deployment.cache.jarcompre ssion = 0
deployment.cache.max.size = -1
deployment.capture.mime.ty pes = false
deployment.console.startup .mode = SHOW
deployment.control.panel.l og = false
deployment.javapi.cache.up date = false
deployment.javapi.lifecycl e.exceptio n = false
deployment.javapi.log.file name =
deployment.javapi.runtime. type = 0
deployment.javapi.trace.fi lename =
deployment.javaws.associat ions = ASK_USER
deployment.javaws.autodown load = ALWAYS
deployment.javaws.cache.up date = false
deployment.javaws.home.jnl p.url = http://java.sun.com/products/javawebstart
deployment.javaws.installU RL = http://java.sun.com/products/autodl/j2se
deployment.javaws.logFileN ame =
deployment.javaws.muffin.m ax = 256
deployment.javaws.shortcut = ASK_IF_HINTED
deployment.javaws.splash.i ndex = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\c ache\6.0\s plash\spla sh.xml
deployment.javaws.ssv.enab led = true
deployment.javaws.traceFil eName =
deployment.javaws.uninstal l.shortcut = false
deployment.javaws.update.t imeout = 1500
deployment.javaws.version = javaws-1.4.2_03
deployment.javaws.viewer.b ounds = 452,4,895,360
deployment.jpi.mode.new = true
deployment.log = true
deployment.max.output.file .size = 10
deployment.max.output.file s = 5
deployment.mime.types.use. default = true
deployment.proxy.bypass.lo cal = false
deployment.proxy.override. hosts =
deployment.proxy.same = false
deployment.proxy.type = 3
deployment.repository.askd ownloaddia log.show = true
deployment.repository.enab led = true
deployment.security.SSLv2H ello = false
deployment.security.SSLv3 = true
deployment.security.TLSv1 = true
deployment.security.askgra ntdialog.n otinca = true
deployment.security.askgra ntdialog.s how = true
deployment.security.authen ticator = true
deployment.security.browse r.keystore .use = true
deployment.security.client auth.keyst ore.auto = true
deployment.security.expire d.warning = true
deployment.security.https. warning.sh ow = false
deployment.security.jsse.h ostmismatc h.warning = true
deployment.security.notinc a.warning = true
deployment.security.sandbo x.awtwarni ngwindow = true
deployment.security.sandbo x.jnlp.enh anced = true
deployment.security.truste d.policy =
deployment.security.valida tion.crl = false
deployment.security.valida tion.ocsp = false
deployment.system.security .cacerts = C:\Program Files\Java\jre6\lib\securi ty\cacerts
deployment.system.security .jssecacer ts = C:\Program Files\Java\jre6\lib\securi ty\jssecac erts
deployment.system.security .oldcacert s = C:\Program Files\Java\jre6\lib\securi ty\cacerts
deployment.system.security .oldjsseca certs = C:\Program Files\Java\jre6\lib\securi ty\jssecac erts
deployment.system.security .trusted.c erts = C:\Program Files\Java\jre6\lib\securi ty\trusted .certs
deployment.system.security .trusted.c lientauthc erts = C:\Program Files\Java\jre6\lib\securi ty\trusted .clientcer ts
deployment.system.security .trusted.j ssecerts = C:\Program Files\Java\jre6\lib\securi ty\trusted .jssecerts
deployment.system.tray.ico n = true
deployment.trace = true
deployment.update.mime.typ es = true
deployment.user.cachedir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\c ache
deployment.user.extdir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\e xt
deployment.user.logdir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\l og
deployment.user.security.p olicy = file://C:/Documents%20and% 20Settings /Ren%c3%a9 /Applicati on%20Data/ Sun/Java/D eployment/ security/j ava.policy
deployment.user.security.s aved.crede ntials = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\au th.dat
deployment.user.security.t rusted.cac erts = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\tr usted.cace rts
deployment.user.security.t rusted.cer ts = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\tr usted.cert s
deployment.user.security.t rusted.cli entauthcer ts = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\tr usted.clie ntcerts
deployment.user.security.t rusted.jss ecacerts = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\tr usted.jsse cacerts
deployment.user.security.t rusted.jss ecerts = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\s ecurity\tr usted.jsse certs
deployment.user.tmp = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\t mp
deployment.version = 6.0
java.quick.starter = true
-------------------------- ---------- ---------- ------
Done.
I checked also the contents of the splash.index reference. The XML-file contains:
#
#Wed Aug 06 15:57:46 CEST 2008
http\://www.i-modulas.nl/downloads/imodulas.jnlp=C\:\\Documents and Settings\\Ren\u00E9\\Appli cation Data\\Sun\\Java\\Deploymen t\\cache\\ 6.0\\34\\7 7ae12e2-79 8ea2f7
Does this help?
René
Dump deployment properties ...
--------------------------
deployment.browser.path = C:\Program Files\Internet Explorer\iexplore.exe
deployment.browser.vm.iexp
deployment.browser.vm.mozi
deployment.cache.enabled = true
deployment.cache.jarcompre
deployment.cache.max.size = -1
deployment.capture.mime.ty
deployment.console.startup
deployment.control.panel.l
deployment.javapi.cache.up
deployment.javapi.lifecycl
deployment.javapi.log.file
deployment.javapi.runtime.
deployment.javapi.trace.fi
deployment.javaws.associat
deployment.javaws.autodown
deployment.javaws.cache.up
deployment.javaws.home.jnl
deployment.javaws.installU
deployment.javaws.logFileN
deployment.javaws.muffin.m
deployment.javaws.shortcut
deployment.javaws.splash.i
deployment.javaws.ssv.enab
deployment.javaws.traceFil
deployment.javaws.uninstal
deployment.javaws.update.t
deployment.javaws.version = javaws-1.4.2_03
deployment.javaws.viewer.b
deployment.jpi.mode.new = true
deployment.log = true
deployment.max.output.file
deployment.max.output.file
deployment.mime.types.use.
deployment.proxy.bypass.lo
deployment.proxy.override.
deployment.proxy.same = false
deployment.proxy.type = 3
deployment.repository.askd
deployment.repository.enab
deployment.security.SSLv2H
deployment.security.SSLv3 = true
deployment.security.TLSv1 = true
deployment.security.askgra
deployment.security.askgra
deployment.security.authen
deployment.security.browse
deployment.security.client
deployment.security.expire
deployment.security.https.
deployment.security.jsse.h
deployment.security.notinc
deployment.security.sandbo
deployment.security.sandbo
deployment.security.truste
deployment.security.valida
deployment.security.valida
deployment.system.security
deployment.system.security
deployment.system.security
deployment.system.security
deployment.system.security
deployment.system.security
deployment.system.security
deployment.system.tray.ico
deployment.trace = true
deployment.update.mime.typ
deployment.user.cachedir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\c
deployment.user.extdir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\e
deployment.user.logdir = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\l
deployment.user.security.p
deployment.user.security.s
deployment.user.security.t
deployment.user.security.t
deployment.user.security.t
deployment.user.security.t
deployment.user.security.t
deployment.user.tmp = C:\Documents and Settings\René\Application Data\Sun\Java\Deployment\t
deployment.version = 6.0
java.quick.starter = true
--------------------------
Done.
I checked also the contents of the splash.index reference. The XML-file contains:
#
#Wed Aug 06 15:57:46 CEST 2008
http\://www.i-modulas.nl/downloads/imodulas.jnlp=C\:\\Documents and Settings\\Ren\u00E9\\Appli
Does this help?
René
This is what I think:
1. Even if the splash screen works fine, you will always get the javaws splash first. Try JGoodies application to see that:
http://www.jgoodies.com/download/demos/looks/looksdemo.jnlp
2. On the first download the image will never show (thats how it is).
3. On the next download the image should show, but it doesnt, since the application starts too fast.
So basicly, it could be that your application shows the splash, we just dont see it :)
And for the answers:
This is what i have at work:
Java Web Start 1.6.0_04
Using JRE version 1.6.0_04 Java HotSpot(TM) Client VM
I'm not sure what i have at home.
One other thing: when i start the application, there is no screen (i dont know what the application does). If I start it more then once, I have many instances of the application running. Is that how it was suppose to be?
Try showing a window on start of the project. I think it could make a difference in speed of startup.
ASKER
The Java AppServer was not running anymore for several days. I've restarted it, so now you must get a login window. Still your response does not explain why you saw the splash screen at home, but not at your work.
I tried it again, and there is no login window, only javaw process starts (which I have to kill later through task manager).
I am not sure if thats the reason, i'd just try it by delaying the startup process (could be the speed of computer).
ASKER
I do not understand it. After receiving your message, I immediately tried to start the application again from our javaclient webpage and I still get the login and console windows. See attached screen shot.
desktop.JPG
desktop.JPG
I tried it again, and there is nothing there. I mean, no window is opened.
I also have the console opened (but that is the client side setting) and there is no output to the console.
Can you add some System.out.println so i can see it in the console?
ASKER
I tried this. When I ran locally and started the Java application from a DOS box, I got the console message that I added displayed in the DOS box. But when running from the server through JWS, I do not get the message in my console window. So I'm not sure where this message goes to now.
Anyhow, I get the feeling we are not getting anywhere. At your first attempt it runs fine, even with a modified splash screen and now it does not run at all anymore? Maybe when you try again from home you will find out it runs fine again?
Anyhow, I get the feeling we are not getting anywhere. At your first attempt it runs fine, even with a modified splash screen and now it does not run at all anymore? Maybe when you try again from home you will find out it runs fine again?
The problem is in the application. When I start it I get the following exception after a while, telling me it cant connect:
java.net.ConnectException:
at java.net.PlainSocketImpl.s
at java.net.PlainSocketImpl.d
at java.net.PlainSocketImpl.c
at java.net.PlainSocketImpl.c
at java.net.SocksSocketImpl.c
at java.net.Socket.connect(Un
at java.net.Socket.connect(Un
at java.net.Socket.<init>(Unk
at java.net.Socket.<init>(Unk
at javax.net.DefaultSocketFac
at com.iscobol.rpc.messageser
at com.iscobol.rpc.dualrpc.cl
at com.iscobol.gui.client.Cli
at com.iscobol.gui.client.Cli
at sun.reflect.NativeMethodAc
at sun.reflect.NativeMethodAc
at sun.reflect.DelegatingMeth
at java.lang.reflect.Method.i
at com.sun.javaws.Launcher.ex
at com.sun.javaws.Launcher.ex
at com.sun.javaws.Launcher.do
at com.sun.javaws.Launcher.ru
at java.lang.Thread.run(Unkno
I guess thats why the application never starts.
ASKER
You are right! I recall now that we have protected our test environment with VPN; I'm testing within the VPN, you are outside so you do not get access. I totally overlooked this because you told me it worked from your home. My excuses!
This is my home installation:
Java Web Start 1.6.0_03
Using JRE version 1.6.0_03 Java HotSpot(TM) Client VM
I tried again, and its not what I thought. The splash screen shows immediately, there is no java screen at all (except for the first start, if I clear the javaws temp files and then start).
So I guess it could be because of java version.
ASKER
Ok, good guess! So I removed nine (9!) old Java Runtime Environments from my system, cleaned the register and temp files, restarted and tried again. The Java Console now says: "Java Web Start 1.6.0_03 Using JRE version 1.6.0_03 Java HotSpot(TM) Client VM", so that looks good. I get the "Java Starting" splash as shown on our website, but this is the first time, so I try again ..... still the same!! That Sun Java rubish makes me nuts!! COBOL was not so bad at all!
Ok, we will get to the bottom of this. I tried the demo web start application, here:
http://blogs.sun.com/thejavatutorials/entry/changing_the_java_web_start
The demo is there only to show the splash screen function, so it should work, right? Here is the jnlp:
http://java.sun.com/docs/books/tutorialJWS/uiswing/components/ButtonDemo.jnlp
Well, I tried this on my computer and it didnt work, and then I tried it on another and it worked just fine.
I suggest you try it on yours. If it doesnt work, then it must have something to do with the situation on your computer (as well as on mine).
ASKER
Sorry, it does not work. I still get the Java splash. So now it becomes interesting. Why doesn't it work on my and one of your computers and why does it work fine on your other pc? It get the impression it has nothing to do with the Java version, right?
I'm out of ideas for this one. It obviously has got something to do with the client side of java webstart setting. It could be either version, some setting, a bug, or something completely different. Dont know.
I will look at it some more later on.
ASKER
Sorry for the delay, I missed your reply. I agree. And maybe other people who read this have ideas or experiences that will help to get this solved or at least point give us a clue why this does not work?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Well done Dejanpazin! You are not only a guru, but you also do not give up easily. I think a lot of people can benefit from this excellent tip. I checked a lot of forums, but none provided this clear solution. Thanks!
Thx for the comment Rene_van_O! Feels good to know the solution is really appreciated.
There is no problem really, its just that the splash screen doesn't show on the first start. On every next start, the splash is there.