java roadmap - web start deprecation

Discuss all problems you have with Servoy here. It might help to mention the Servoy version and Operating System version you are using

java roadmap - web start deprecation

Postby jozef.kopanicak » Wed Jul 25, 2018 2:14 pm

First of all, this only affects Smart Clients and Java Webstart

Oracle has announced, that they will deprecate Java Webstart.

https://www.oracle.com/technetwork/arti ... 35779.html
http://www.oracle.com/technetwork/java/ ... 414431.pdf
https://blog.securityevaluators.com/ora ... ded4ab1b5e

What I gathered from this is this:
  • Java Webstart will be completely removed from Java 11 onwards
  • Java Webstart users should stay on Java 8, because Java 9 is not supported anymore, java 10 will soon not be supported, as they're both non-LTS versions
  • After January 2019 / December 2020, Java 8 will no longer be supported for commercial / personal users respectively, without a licence from Oracle
  • After March 2025, Java Webstart will not be supported any more
  • Java 11 is no longer free and will need a license from Oracle
Now that's for the OracleJDK. Then there's the OpenJDK, which should take over the role of free java. Starting with Java 11, the OpenJDK should be the same as OracleJDK, but without Oracle support.
As far as I know, there's no Java Webstart in OpenJDK, but there are projects, that should offer similar functionality (IcedTea Web, Netx). For them to work, they must be installed localy on the client.

It seems Oracle pushes to go away from Webstart and use newer technologies to deploy java applications to the client. Since Java 9, Jlink seems to be the preffered way.

My questions are:
  • Is there a plan to replace Java Webstart in Servoy? Would it be possible to deploy the Smart Client using jlink?
  • Does anybody have some experience with OpenJDK and .jnlp?

It seems, that soon smart clients will be stuck on an outdated Java 8, if nothing else happens. Apart from rebuilding the application in NG or Web client and the things that I mentioned, is there something else that can be done?
Jozef Kopanicak
Mirus Software AG
jozef.kopanicak
 
Posts: 11
Joined: Wed Aug 29, 2012 10:17 am

Re: java roadmap - web start deprecation

Postby jcompagner » Wed Jul 25, 2018 3:24 pm

i have no idea why they think jlink is the same as webstart.
Those 2 are completely different things...
it doesn't auto update, you really have to kind of install it all the time, it is one big package including the jre if i am not mistaken

I guess what we need to do is adjust our boostrapper so that it can run without webstart. But this also means really changes in our smart client code.

Besides that bootstrapper doesnt support by itself native libraries so we also need to build that.

And what you are missing is also the desktop integration, like creating shortcuts
But i guess you can say to users, download this: www.mysite.com/MyApp.jar (MyApp.jar is just the boostrap.jar)
that you provisioned, so a config file is added inside that jar.

Then when users start that by double clicking on it (java -jar MyApp.jar) then we just download everything an start up the SmartClient
Then the second time they again double click on that jar and we see that it is downloaded and start it right away.
So the MyApp.jar they can place at there desktop

i created a few cases for this, the main one being: https://support.servoy.com/browse/SVY-12654
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Thu Jul 26, 2018 8:36 am

Thanks for your ideas, Johan.
It would be very nice imho if parameters of that jar could be transferred to the startup parameters of Servoy Smart Client.
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby jcompagner » Thu Jul 26, 2018 9:38 am

Parameters that you give to the onstart of the solution? (so arguments?)

Those can be in the config file that is in the "myapp.jar"
So you need to have a "myappX.jar" per parameter configuration then

jvm properties is a bit trickier, like java memory settings, because that means we need to fork another java process that really starts it up.. (because we don't control at all how java starts up the MyApp)
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Thu Jul 26, 2018 1:59 pm

No, we need solution parameters like tennant_id, user_id, language_code etc. in the desktop shortcut.
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby jcompagner » Thu Jul 26, 2018 2:50 pm

there will be no desktop short cut as we had before

The desktop shortcut will be just that "jar" file that is downloaded (they can but that on the desktop)
That jar file has a config file inside it that has those arguments just like the bootstrap.jnlp now would have as explained here: https://wiki.servoy.com/pages/viewpage. ... d=23856169

So with the current bootstrapper you would have your own jnlp files (a set of them if you have different tennants) where you configured those parameters

tenant1.jnlp
tenant2.jnlp

That would be quite the same with a bootstrapper that is not using webstart at all expect that you then get:

tenant1.jar (the bootstrap.jar file + config file which is kind of the same what you now put into the tenant1.jnlp)
tenant2.jar
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Thu Jul 26, 2018 4:25 pm

Thanks for clarifying!
Now many end users can manage that with desktop shortcuts. I don't see them doing the same editing files inside a jar :twisted:
It looks like we have to hire extra support staff...
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Thu Jul 26, 2018 4:28 pm

And what about:

java -jar myjar.jar arg1 arg2

You can call a jar file with parameters or am I wrong?
The bootstrap.jar could handle / pass through those parameters?
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby jcompagner » Thu Jul 26, 2018 4:40 pm

no you are making those files on the server with the right config build into the jar file.

your customer just downloads one of the files and just starts it up...

yes you could use

java -jar myjar.jar x y z

but then would mean that you really need to control the client/customer
They really have to make a link like that adjusting it themselves..

The whole point is that end customers don't need to do anything just download a jar and double click on that one every time they want to start.

But in your case, currently your customers really adjust desktop shortcuts/links? What are they really changing then?
Why not point them to the right webstart/jnlp url that has the right arguments (or if you use the bootstrapper then you have different jnlp's already)
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Thu Jul 26, 2018 10:49 pm

Okay, but how do the end users download a jar and from where if you dont use java webstart?
Client / server security ?
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby jcompagner » Fri Jul 27, 2018 9:23 am

from you server

instead of hitting: www.yourserver.com/bootstrap.jnlp it will be www.yourserver.com/bootstrap.jar

You can name that bootstrap.jar any thing you want (except that it needs to be a .jar)

And then users need to be educated that they can then double click that jar that they have downloaded (if they have java installed)
(and they can make short cuts to that jar, or place that jar directly on the desktop)
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Fri Jul 27, 2018 10:05 am

Sounds good! One less dependency (Java Webstart).
Please keep us informed in this project :)
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Fri Apr 10, 2020 3:19 pm

How can you get to / read the arguments defined in the standalone bootstrap.jar in Servoy2019 code Smart Client?

Regards,
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands

Re: java roadmap - web start deprecation

Postby jcompagner » Fri Apr 10, 2020 3:50 pm

you mean arguments defined in the bootstrap.properties that you ship inside the bootstrap.jar like described here: https://wiki.servoy.com/pages/viewpage. ... d=23856169 ?

you should just get them as normal arguments.
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8829
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: java roadmap - web start deprecation

Postby lwjwillemsen » Sat Apr 11, 2020 3:31 pm

Thanks, I saw later that the application.getStartUpArguments() is reintroduced in Servoy2020.03 (no longer deprecated).
I hope that function works as described in the Wiki Servoy2019 in Servoy2019.12.1 where it is deprecated... :?
Lambert Willemsen
Vision Development BV
lwjwillemsen
 
Posts: 680
Joined: Sat Mar 14, 2009 5:39 pm
Location: The Netherlands


Return to Discuss possible Issues and Bugs

Who is online

Users browsing this forum: No registered users and 4 guests

cron