Install4J with Java 1.6 & security - java

I'm about to release a new version of my app. I'd prefer to stick with Java 1.6 since it's been fully tested using that JVM. I use install4J.
On the Mac I don't package a JVM, relying on the presence of Apple's JVM. As I understand it they've disabled the browser plugin by default so security isn't an issue.
I do however package a 1.6 JVM with the windows version. Am I correct in believing that the packaged 1.6 JVM doesn't have and more security risks than the latest 1.7 JVM since it won't be used by the browsers?
Thanks.

Thats just a question of updated software, older versions still safe. but using then in the browser can be such a problem just because of websites checking java version.

http://www.java.com/en/download/faq/remove_olderversions.xml
take a look at that link it should help

Related

JDK libraries which are not included in JRE

I have a trial task which includes writing simple http server using only Oracle JRE 1.6 standard libraries. Here simple HTTP server in Java using only Java SE API
I found the statement:
Since Java 1.6, there's a builtin HTTP server in Sun Oracle JDK (note: JDK, not JRE).
But I thought that all runtime libraries are included in JRE, and JDK is JRE + some development tools. Also, I have downloaded JRE 1.6 and found that HttpServer is included there in the rt.jar file.
So, my questions are:
Is it correct for me to use this implementation?
Why it is stated that JDK has libraries that are not in JRE? Do JDK provide any additional libraries to JRE?
Before I answer, please note that I am not familiar with the implementation you're referring to (I generally pull in Jetty and embed it when I need an HTTP server in my modules). So I'll answer somewhat generally, but maybe this gets your mind thinking in a direction that's helpful.
Is it correct for me to use this implementation?
That depends on the constraints on the trial task. Assuming that the implementation meets those constraints, and you are willing to live with any shortcomings it has, then there is nothing intrinsically wrong with using it. If it's available, it's fair game.
Why it is stated that JDK has libraries that are not in JRE? Do JDK provide any additional libraries to JRE?
First off, the statement made in that question is observably false. Clearly that implementation is included in the JRE.
More generally though, the JDK always has the option to do this, and there are definitely libraries deployed with a JDK that are not deployed with a JRE (see this page). Moreover, depending on the install, it's possible that there are installed extensions to the JRE in place (see this page).

Does using JavaFX Dialogs require JDK8u40, or can any version be used?

I'm using the JDK8u40 for it's Dialogs in JavaFX. Will any user be able to use these with their Java version or will they require that specific version of the JRE?
They will require 8u40. It is mean that you should provide 8u40 JRE as part of your installation package (DMG, MSI, etc.).
They will require that specific version of the JRE.

Java Applet deployment to multiple JRE

Folks,
I have the following challenge, I would like to deploy an Applet which relies on Java 1.8 syntax into hundreds of client workstations already running an old Java Applet which relies on Java 1.5
The problem is, I do not have access to the Java 1.5 Applet code and even not to it's launcher Html page. Alas, this launcher Html page relies on the Applet tag and will therefore attempts to load the most recent Java plugin version installed on the workstation.
I don't like to rely on any virtualization solution, I have to run as a Java Applet, perhaps Web Start can be considered if you think it would help.
My questions are:
Is there a local workstation configuration/hack to tell the browser to load a specific (old) Java version when rendering the Applet tag ?
Otherwise, is there a way to use Java Web Start to workaround this problem and somehow run my newer Java Applet without updating the "official" workstation Java plugin version ?
Ok you ask several questions, here are some answers:
It is not possible to run Java 1.8 code with a "lower" JRE/JDK like 1.7, 1.6 or 1.5. The other way around however is possible - you can use Java 1.8 to run a java 1.5 applet...
You don't need to hack your workstation - if you only install one java version (even if it is an older one) and it is installed/configured correctly that version will be used to start your applet
With the next generation plugin (introduced since 6u10) it is possible to start your applets with a jnlp file. The jnlp syntax allows you to specify a specific java version and if that one is not installed it will/can be downloaded. One example would be:
<j2se version="1.6.0_10" href="http://java.sun.com/products/autodl/j2se"/>
Some general idea, please correct me if I didn't fully understand you:
You want both applets to run, right?
For that to work you will have to change something at some point. Possibilities (My answer disregards security - from this perspective always use the latest java version):
Install the latest Java 1.8 and sign your old applet. Signing an applet doesn't require the source code - just access your webpage, run the applet and then search java cache for the applet.jar. Sign it with an official certificate and deploy it on your server. (Additionally this may require adding some Manifest attributes as well)
Downgrade your new applet to java 1.7 or 1.6 and install an older Java like 1.7.0_17. Until Java 1.7.0_21 signing was not mandatory. If you see the baseline for Java 6 it would be version 1.6.0_43.
Theoretically you can use jnlp to define an exact java version which should be used to run an applet. The problem is, that it was introduced starting with 1.6.0_10 - thus your 1.5 java does not suffice. If it is possible to run your old applet with a slightly newer java and also add a jnlp file to your webpage then it could work. For that you would need to: Install two newer java versions: One 1.6.0_10 or higher (until 1.6.0_43, or 1.7_17) and the latest 1.8.0_X. Then in the jnlp file define your exact 1.6/1.7 java. When accessing your web page the 1.8 plugin will be started which detects that an older java version is required and then the older version will be started afterwards. For your newer applet the latest java will be used...

Do I need to set the Java Platform (JDK) in netbeans if I am using the Pom.xml in accumulo-1.4.3?

I have opened/imported the accumulo "examples-simple" maven project into netbeans. Do I need to set the Java Platform?
Properties indicate "Java SDK 7.1". I know that accumulo-1.4.3 runs on JDK 1.6.0.
My current version is java version "1.6.0_32"
I am pretty sure the answer is yes, but it never hurts to ask!
Thanks,
Chris
As answered by Josh Elser on the Apache Accumulo Mailing List, where this was cross-posted to:
No, you don't need to.
Currently, all versions of Accumulo are still guaranteed to work against
1.6. So, if you hypothetically contributed anything back to Accumulo,
you would need to make sure that it runs on a 1.6 JVM. As such, it's a
good idea to ensure that you're building with a 1.6 JVM, but not a
requirement if you're just developing things locally for yourself.

How to open html file in default browser in JDK 1.4

I see a lot of JDK 1.6 notes about how to open an HTML file in the default browser but none for JDK 1.4.
Does anyone have any experience with that?
browserlaunch2 has worked for me in the past.
You can use same code as in version 1.6, just add a reference to JDesktop integration jar. I think (but I'm not 100% sure) this is actually the same library you get with Java 1.6, it was developed as a separate project by Sun before they include in Jdk 1.6.

Categories

Resources