Java-Gaming.org    
Featured games (91)
games approved by the League of Dukes
Games in Showcase (576)
games submitted by our members
Games in WIP (497)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2
  ignore  |  Print  
  Java Webstart Issues  (Read 4860 times)
0 Members and 1 Guest are viewing this topic.
Offline Jeff

JGO Coder




Got any cats?


« Posted 2003-12-16 20:41:42 »

Okay guys,  its feedback into Sun time again!
This thread is for a very specific purpose so lets try to keep it on-topic.

The purpose is to collect all the things that we *might* do to Java Web Start to make it more useful to you.  The idea is to create a  list that we can approach the Web Start guys with.

SO.. please post here any RFE ideas you have for Webstart.  if you could, at the same time, tell us what category this falls into of the following arbitrary levels...  Wink

(1) A blocker to my using Webstart at all for my application.
(2) Something that would make Webstart much more usable for my application.
(3) Something that would make my life much easier using Webstart.
(4) Something I just thought of thats cool but I have no immediate intention of using Smiley

As much detailed info as you can give us on your project and how this RFE would impact it would be great Smiley

Okay, shoot away!

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #1 - Posted 2003-12-16 22:24:26 »

Open access to more (i.e. ALL) VM options .. I think this is already a RFE.
I need to specify the garbage collector for instance.  Basically if I can do it from a command line with the java.exe I want to be able to do it from WebStart..  In some cases there will be things that should only be allowed for signed applications..   (e.g. bootclasspath)

That's the BIG one.

Ability for my application to install itself in a location specified by the user, but retaining Web Starts ability to keep  it current.

It should be possible to download an application bundle or distribute a bundle on CD and have it install in this way, such that WebStart can manage updates...  I know we could still use JNLP with our own client, but there is no sense in having everyone re-invent the wheel in terms of automatic software updaters.

On Windows applications installed via WebStart should show up in and be managed from the Add/Remove programs control panel.
** edit ** this may be there already

There should be the ability to retain older versions of applications so you can fall back if a newer version fails to work for you or you simply prefer the previous version.

The trust relationship should be made clearer to the users - who don't have a good grasp of what certificates are.  They are asked to trust a "Company" not a "program"... and from that point on they implicitly trust ALL programs from that sam company...  I think that must be made more clear - OR provide a mechanism to trust on a per jnlp URL basis.    I think users will grasp the concept better if they authorize every new application and have the option to say that they "trust all content from x".  Internet Explorer seems to do this with Active-X controls..  allowing for a "start it this time" option, and an "always trust these guys" option.

The Preferences area of the Web Start application launcher should make it easy to manage trusted companies.  Right now all I see is a way to display Root Certificates.  How do I reset things so I'm asked again if I trust XYZ whenever an update is available or I choose to launch a new application from them?  Note, I want to do this yet still be able to run the code that I have already downloaded and decided is ok to run.

Offline Herkules

Senior Member




Friendly fire isn't friendly!


« Reply #2 - Posted 2003-12-17 05:38:32 »

+1 for swpalmers points

Quote
On Windows applications installed via WebStart should show up in and be managed from the Add/Remove programs control panel.


Isn't that already so?

HARDCODE    --     DRTS/FlyingGuns/JPilot/JXInput  --    skype me: joerg.plewe
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline elias

Senior Member





« Reply #3 - Posted 2003-12-17 06:43:57 »

Yeah well, I have the obvious one: Make JWS installable from a machine with no previous JRE installed. That's relevant for win32 (at least for browsers != IE where some activex plugin apparantly exists) and for linux.

That would be a category (2) RFE for me.

And also relevant for JWS but probably not directly part of JWS:  Make the initial JRE install smaller and/or module based. Individual modules can then be fetched on demand (JWS already does that for our own applications).

- elias

Offline princec

JGO Kernel


Medals: 282
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #4 - Posted 2003-12-17 10:21:52 »

Just echoing what's already been said, with further refinement:


(1) A blocker to my using Webstart at all for my application.

Just the sheer bloody size of the JRE. As Elias said, a modular JRE would be fantastic. It's also much, much, much easier to do than you might expect - I've already done it Cheesy Hey and guess what, you don't even have to change anything!! You can actually get Webstart to download and use AWT/Java2D/Swing etc without any modification. If the jars were placed in a "well-known" location @ Sun then you'd basically have them treated like standard extensions and we'd all just be downloading them once, as needed. Unfortunately as Webstart is not a native application it still needs 5MB of extra bumpf. If it were turned into a crisp, native GUI running atop the minimum JVM, you'd have a winner.

In terms of bang-for-buck this has got to be the very easiest one to implement - if I can manage it in an afternoon (and I did), then so can the mighty engineering resources at Sun.

Then I won't be breaking any pesky licensing rules Cheesy

It would also be highly advisable to ditch the shitty Metal L&F from Java altogether if at all possible and use something with a bit of class like the Alloy L&F. Metal apps look incredibly unprofessional.

(2) Something that would make Webstart much more usable for my application.

Being able to pass -X parameters to the JVM - depending on the exact VM version and vendor.

(3) Something that would make my life much easier using Webstart.

It's just a little thing, but a GUI JNLP builder would be a really great, easy little tool to ship with the JDK. Drag and drop jars into it, get it to sign them for you with your own keystore, write out a JNLP file. Job done. You need to really help people start using Webstart and right now it involves reading some rather complicated documents about signing and keystores and XML files.


On a related note - I have discovered since how to pre-install applications using Webstart and local file URLs and then subsequently drag down updated code from the Web but it's not exactly straightforward, requiring as it does a special webserver module to handle JAR versioning. Maybe a Webstart version handling module for IIS and Apache would be a good thing to offer as an actual product. I'd buy it for $25.


Cas Smiley

Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #5 - Posted 2003-12-17 10:25:08 »

Cat 2: (but optimistic!) An option (in user's settings - i.e. not config'd automatically by my app) to automatically scan for updates, in the same manner as MS WindowsUpdate.

Basically, if a user has a problem with playing the game, but I fix the bug next week, will they ever start up the game again and find it's been fixed? Probably not. But, if they get a note "it's been updated" they are much much more likely to try again.

Just a thought...

malloc will be first against the wall when the revolution comes...
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #6 - Posted 2003-12-17 12:49:23 »

Re: Add/Remove programs on windows...
Quote
Isn't that already so?


Hmmm.. it might be.. I guess only for applications that you have chosen to create a standard shortcut for.   I did a quick check on my machine add it looked like it wasn't the case, but I didn't check thoroughly.

Offline Jeff

JGO Coder




Got any cats?


« Reply #7 - Posted 2003-12-17 23:31:37 »

Question for Cas (even though its arguably slightly off topic)

Making the JRE truely modular I think is far harder then you imagine.  All the GUI elements are really intertwined  in the native code.

BUT doing what you did, which was basically to throw out EVERYTHING graphical, audio, input, etc and have a bare VM with maybe java.lang, java.net, java.io/nio and java.util, then add in JOGL/JOAL/JInput.  This might be technically doable.

Does this meet your goal?

The reason its off topic is that such a VM could not run Webstart as it exists today because it has GUI elements.  Which leads to thought 2, would a "Webstart engine" that had no GUI built into it be of value then?

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #8 - Posted 2003-12-18 00:01:29 »

Quote
would a "Webstart engine" that had no GUI built into it be of value then?


I think so.  If it could be used as a general update mechanism that could update JARs placed in an arbitrary folder.

Offline William Denniss

JGO Coder


Projects: 2


Fire at will


« Reply #9 - Posted 2003-12-18 00:03:43 »

I would like to see an option in JNLP that would let you specify if the user can decide to upgrade or not when a new version exists.

Especially from a game perspective - people may choose not to upgrade until the majority of the third-party servers are upgraded.  Or they may be on dial up...

This is the forced early adopters issue swpalmer brought up in this thread: http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=OnLin;action=display;num=1070383305

I would place this in category (2) as unless you control the game servers - using JWS has a rather large downside in this area.  If you do control the game servers then under the new scheme you could simply force people to upgrade as currently is the case.

Will.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline kevglass

JGO Kernel


Medals: 85
Projects: 25


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #10 - Posted 2003-12-18 06:07:30 »

Sorry, I know its off topic (maybe another thread would be worth while)

Quote

BUT doing what you did, which was basically to throw out EVERYTHING graphical, audio, input, etc and have a bare VM with maybe java.lang, java.net, java.io/nio and java.util, then add in JOGL/JOAL/JInput.  This might be technically doable.


But how would that be doable, JOGL is dependant on AWT is it not?

Kev

Offline Matzon

JGO Knight


Medals: 19
Projects: 2


I'm gonna wring your pants!


« Reply #11 - Posted 2003-12-18 06:30:08 »

Quote
Sorry, I know its off topic (maybe another thread would be worth while)

But how would that be doable, JOGL is dependant on AWT is it not?

Yes, but as he (and others) use LWJGL they're not dependent on AWT at all Wink

Offline elias

Senior Member





« Reply #12 - Posted 2003-12-18 07:26:10 »

A webstart engine combined with a modular JRE would be of tremendous value. That way, the updating of jars could be done completely independently of the underlying presentation of progress bars etc. In fact it makes much sense to separate the GUI from the engine anyway.

- elias

Offline elias

Senior Member





« Reply #13 - Posted 2003-12-18 07:26:57 »

A webstart engine combined with a modular JRE would be of tremendous value. That way, the updating of jars could be done completely independently of the underlying presentation of progress bars etc. In fact it makes much sense to separate the GUI from the engine anyway.

- elias

Offline kevglass

JGO Kernel


Medals: 85
Projects: 25


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #14 - Posted 2003-12-18 08:03:56 »

Quote

Quote

Sorry, I know its off topic (maybe another thread would be worth while)

But how would that be doable, JOGL is dependant on AWT is it not?


Yes, but as he (and others) use LWJGL they're not dependent on AWT at all  


Argh, new this was going to get complicated. I was getting at how is it possible to do a modular JVM without AWT and then add JOGL as a module...

I'm aware of this thing you call LWJGL, I'm just waiting for someone with the knowledge to write the rendering layer for Xith.. then I might use it Smiley

Kev

Offline princec

JGO Kernel


Medals: 282
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #15 - Posted 2003-12-18 09:39:09 »

You're all confused!

It turns out that AWT really isn't intertwined at all! AWT (and Java2D) as a single chunk is actually a very simple big fat bunch of packages and dlls that all peel off in one chunk.

On top of that, Swing was really easy to peel off separately as well in one big chunk. Remember that Swing used to come as a completely independent package! Although AWT and Swing may be a tiny bit intertwined - it doesn't matter; if there are a few naughty classes from Swing mixed up in AWT now, just ship them with the AWT module. Who cares?

The Java Media framework is a bolt-on.

Then there's a load of ancillary technology (which TBH baffles me as to how it got in J2SE in the first place) such as CORBA which, again, is just one big chunk.

Etc. etc. etc. it's just not quite as complicated as we all thought, and the mechanisms to download the AWT dlls and jars as extensions are built in to Webstart already. Result!

All that's required is that base JRE with all the security and networking capability that I've conveniently got lying around on my HDD, and the Webstart engine can simply call into native code to present a native GUI to the user. The whole thing should be under 3MB zipped which is a fantastic saving and yet still achieves what Sun really wanted achieved, which is that a standard VM gets everywhere.

Oh, and for Bob's sake, ditch that crappy installer in your current JRE install which bloats you about 2MB straight up. Use Nullsoft's installer with 7zip. You will be amazed! There's no excuse for bloated installers.

Cas Smiley

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #16 - Posted 2003-12-18 12:24:47 »

Quote
Oh, and for Bob's sake, ditch that crappy installer in your current JRE install which bloats you about 2MB straight up. Use Nullsoft's installer with 7zip. You will be amazed! There's no excuse for bloated installers.

+1

Install Shield is the worst installer I have ever encountered, both as a developer (creating installers) and an end user (installing stuff).  No wonder it's what Microsoft includes with their dev tools Smiley

Not really relevant to this thread though.  Unless we are talking about the need for a Web Start stand-alone installer that doesn't include a complete JRE, but just enough native code to grab a JNLP file and then grab and run the real installer for the latest J2SE version that the app can run on...  From that point the 'full' Web Start will be installed.

Offline cfmdobbie

Senior Member




Who, me?


« Reply #17 - Posted 2003-12-18 18:19:31 »

Quote
I'm aware of this thing you call LWJGL, I'm just waiting for someone with the knowledge to write the rendering layer for Xith.. then I might use it Smiley


I've got the basics up and running, but my free time suddenly disappeared.  However, my current contract work is as dead as a Norwegian Blue, so I'll hopefully be able to finish it off over Christmas.

Hellomynameis Charlie Dobbie.
Offline kevglass

JGO Kernel


Medals: 85
Projects: 25


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #18 - Posted 2003-12-18 18:34:08 »

Thats fantastic news!

Kev

Offline Jeff

JGO Coder




Got any cats?


« Reply #19 - Posted 2003-12-18 19:13:27 »

Quote

All that's required is that base JRE with all the security and networking capability that I've conveniently got lying around on my HDD,


Yep I think thats what I said.  It isn't really "modular" though, its more minimal.  Thats not a hard goal technically and might even be doable these days business wise.  No promises of result but I'll try to stay on top of the idea internally and see where it goes.

Quote

and the Webstart engine can simply call into native code to present a native GUI to the user.


I don't think you'll see that from Sun, but *maybe* the idea of the Webstart Engine is salable inside, in which case you could always write that GUI stuff yourself...

Quote

Oh, and for Bob's sake, ditch that crappy installer in your current JRE install which bloats you about 2MB straight up. Use Nullsoft's installer with 7zip. You will be amazed! There's no excuse for bloated installers.
Cas Smiley


Whats your feeling on InstallAnywhere, since you seem to have done the comparisons?

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline Jeff

JGO Coder




Got any cats?


« Reply #20 - Posted 2003-12-18 21:16:01 »

Quote
Sorry, I know its off topic (maybe another thread would be worth while)


But how would that be doable, JOGL is dependant on AWT is it not?

Kev


AIUI JOGL is not really AWT dependent.  (It shouldn't be as OGL is a totally separate render pathway.)  The JOGL API today presents itself as needing to start from AWT because of an attempt to make it play nice with AWT.  But if you didn't want any AWT there isn't any technical reason it *has* to be dependent upon it.

Anyway thats my understanding.

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline Jeff

JGO Coder




Got any cats?


« Reply #21 - Posted 2003-12-18 21:20:39 »

Btw, there used to be some open source third party tools for manipulating the Java Web Start cache, including pre-installing things in it.

If they still work they might be useful. l'll try to find them again with GOOGLE...

EDIT: here it is, with a whole bunch of other stuff too..

http://www.vamphq.com/installer.html

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline princec

JGO Kernel


Medals: 282
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #22 - Posted 2003-12-18 23:20:12 »

Nullsoft's NSIS installer simply rocks. It's just an awesome bit of technology. InstallAnywhere is a joke by comparison. Just try it for yourself, it'll only take 30 minutes to write a new installer for the JVM.

7Zip is the up-and-coming super-zip that's more squeezy than the rest, and it's just been integrated in to NSIS. If I 7zip up the JRE installation I get 8.6MB (or 8.7MB with a NSIS install wrapped around it).

The JRE I installed that from was a 14.3MB download - yes, the big bloaty international one.

I'll say it again: there is no excuse for the JRE (or even the JDK) being deployed with InstallShield. That's a staggering 5.6MB saving. Imagine the savings in bandwidth to Sun alone.

(Oh and here's another eye-watering statistic: the JDK plus docs amounts to 41.7MB when 7Zipped - compared to 80MB currently. Tsk tsk)

Gotta get those engineers out in the sunlight so they can see the real world now and again! It's no wonder Sun gets so much shit from everyone with corkers like this staring 'em in the face.

As for providing a native GUI for Webstart - well, seeing as you need AWT at a bare minimum for the existing Webstart it rather makes the whole exercise a bit pointless doesn't it Tongue The whole idea here is making the client download smaller and license compliant within the existing license terms, and a native GUI from Sun is the way to do it, with Sun-signed Sun-located extensions to provide functionality by apps as they need it. There's no shame in it; the JVM is not itself written wholly in Java after all. See if you can talk them into seeing sense. After all it's only a few days bloody work to a half competent Windows programmer.

Cas Smiley

Offline Jeff

JGO Coder




Got any cats?


« Reply #23 - Posted 2003-12-19 02:00:23 »

Quote
The whole idea here is making the client download smaller and license compliant within the existing license terms, and a native GUI from Sun is the way to do it,


Well I think its more likely that yould see the following:
(1) A  minimal VM that has NO webstart in its installer
(2) A JNLP engine that you could write your own GUI to and download as the initial install for your app.

Actually I've ben told that OpenJNLP already can be used headless.  And as its opensource you could throw out its GUI stuff easily enough.  If i have a minute (hah) maybe Ill look into that more.

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline princec

JGO Kernel


Medals: 282
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #24 - Posted 2003-12-19 10:45:06 »

Yes, but this is all sounding like work and normally we like to get paid for doing work.

Elias & I would love to write (and market) a Game Webstart system if we knew we'd get a license to sell it to developers. We've got a VM as you know, and we're quite capable of implementing JNLP and slapping a native GUI on it in Win32 (I have to say it's only Win32 that's important here as the Mac is already sorted and Linux is... well, Linux Tongue ) - the thing is that's real work and exceedingly valuable, and completely impossible to do without Sun endorsement (ie. a contract) up front.

If we were to produce Game Webstart, which was a 3MB payload or so, how much could we license it for to developers wishing to deploy with it? $500 maybe? And what proportion of that would have to be donated to Sun?

Cas Smiley

Offline Jeff

JGO Coder




Got any cats?


« Reply #25 - Posted 2003-12-19 16:20:21 »

Quote
If we were to produce Game Webstart, which was a 3MB payload or so, how much could we license it for to developers wishing to deploy with it? $500 maybe? And what proportion of that would have to be donated to Sun?

Cas Smiley


Depends on what you mean.  Something based on OpenJNLP I believe you could develop and sell with nothing due anyone.  Note that I am NOT a lawyer or business person and NOT in the Sun licensing group. AFAIK though there aren't any licensing requirements on the JNLP spec....

Destributing a cut-down VM is another story.  The only way to do that legally today is embedded  in the project (as an embedded Java instance.)  Those deals are generally negotiated on a case by case bases.  Chris is your friend here. (And Doug to a lesser degree.)  Convince them that this is of real value to the developer community and they may be able to get you a break.  If you are going to charge for the final product though I doubt it would be free.  

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline Golthar

Junior Member




;)


« Reply #26 - Posted 2004-01-07 11:04:30 »

Back on topic  Grin

I'd like to see Webstart integrate with my applications.
Make Webstart an available component which can be used to download parts of your application (and perhaps even classload them automaticaly)

Im working on something like this, but if Sun would do this for me  Cheesy

come visit us: http://www.otf1337.com
Offline Jeff

JGO Coder




Got any cats?


« Reply #27 - Posted 2004-01-07 22:38:33 »

I understand a third party has already done it.

Look at OpenJNLP on sourceforge

Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline Golthar

Junior Member




;)


« Reply #28 - Posted 2004-01-08 07:50:50 »

I can remember looking at it once and not finding it satisfactory for my requirements.
However as I can't remember what was the exact problem, I'll have another look (Java Webstart does contain everything I needed...if I can embed it with some work, I'd be a very very happy man)

Having looked at it again, I can say that with some minor adjustments, I can make this work perfectly for my environment and enable me to give the end users an way to download plugins and keep their applications up to date  Grin
Thank you

come visit us: http://www.otf1337.com
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #29 - Posted 2004-01-08 17:33:10 »

Maybe you can share the result.. Maybe make a more specific project on java.net taylored to patching clients that are not installed initially via WebStart?

Pages: [1] 2
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

xsi3rr4x (12 views)
2014-04-15 18:08:23

BurntPizza (10 views)
2014-04-15 03:46:01

UprightPath (24 views)
2014-04-14 17:39:50

UprightPath (10 views)
2014-04-14 17:35:47

Porlus (27 views)
2014-04-14 15:48:38

tom_mai78101 (49 views)
2014-04-10 04:04:31

BurntPizza (107 views)
2014-04-08 23:06:04

tom_mai78101 (207 views)
2014-04-05 13:34:39

trollwarrior1 (176 views)
2014-04-04 12:06:45

CJLetsGame (182 views)
2014-04-01 02:16:10
List of Learning Resources
by Longarmx
2014-04-08 03:14:44

Good Examples
by matheus23
2014-04-05 13:51:37

Good Examples
by Grunnt
2014-04-03 15:48:46

Good Examples
by Grunnt
2014-04-03 15:48:37

Good Examples
by matheus23
2014-04-01 18:40:51

Good Examples
by matheus23
2014-04-01 18:40:34

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:22:30

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:05:20
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!