Codebase of Eclipse using generic - eclipse

Do anyone know when Eclipse plans to move its codebase to > 1.5 (i.e. using generic & annotation)?

Even the latest plan for the upcoming eclipse 3.6 Helios still mentions:
Most of the Eclipse SDK is "pure" Java code and has no direct dependence on the underlying operating system. The chief dependence is therefore on the Java Platform itself.
Portions are targeted to specific classes of operating environments, requiring their source code to only reference facilities available in particular class libraries (e.g. J2ME Foundation 1.1, J2SE 1.4, Java 5, etc).
In general, the 3.6 release of the Eclipse Project is developed on a mix of Java 1.4, Java 5 and Java 6 VMs.
As such, the Eclipse SDK as a whole is targeted at all modern, desktop Java VMs.
Most functionality is available for 1.4 level development everywhere, and extended development capabilities are made available on the VMs that support them.
So as long as they want to support platforms with an old JDK, the incentive to rewrite a large portion of the codebase in recent JDK is low.
Note: e4 (Eclipse 4.0) will be based on Java 5.
In general, the 1.0 release of the e4 Project is developed on Java SE 5.

Some of Eclipse codebase (the Java EE part) is already using 1.5 level. As for the rest of it, I don't think they have any plans - I doubt if it is worth the effort.
More here -> http://www.eclipse.org/downloads/moreinfo/jre.php

Related

How can I chose a specific version of Java EE in Eclipse?

It's my first day with Java EE and I would like to understand:
How I can set up a Java EE 7 project? and where can I check what Java EE version I am actually using?
I downloaded the latest Eclipse for Java EE Developers (Neon) and am now trying to understand how all these parts fit together.
I ended up downloading Java Platform, Enterprise Edition 7 Web Profile SDK Update 3 as well as a Shell file to install Java Platform, Enterprise Edition 7 SDK Update 3.
I know there is a lot of instructions provided but I would just like to set up my Eclipse environment.
Happy for any help or resource!
You can follow this tutorial http://www.edu4java.com/en/servlet/servlet4.html it's old but it basically the same thing
You have to create a new project (Dynamic Web Project)
The versions of the Facets you choose will determine which Java EE spec version it aligns with
Choose your application server (I personally recommend Wildfly http://wildfly.org/, but the built-in Java EE Preview Server can run Servlets on its own)
And you are ready to go !

Starting a project in Java EE

I am thinking of using Java EE for my college project. Previously, I have used C# for a desktop application. I am new to Java and Java EE.
My question is this. What do I have to consider before starting a project in Java EE? I am thinking about using NetBeans as my IDE. Is this a good idea? I can choose either MS Sql Server or Oracle as my back end.
What do I have to consider before starting a project in Java EE?
This question is very broad and I don't know if this is exactly the expected answer but my suggestion would be to go for Java EE 6 (more precisely, for the Java EE 6 Web Profile which is a subset of the entire specification but should be more than enough in your case) and to use the following APIs:
JSF 2.0 for the presentation layer.
EJB 3.1 Lite for the services layer.
JPA 2.0 for the persistence of your domain objects.
For the runtime environment (the server to run the code), I suggest using GlassFish 3.0.1 Web Profile.
I am thinking about using NetBeans as my IDE. Is this a good idea?
That would be my recommendation. NetBeans is a very decent IDE, is beginner friendly IDE (but still powerful), it provides very good support for Java EE 6, very good integration with GlassFish, and has are plenty of tutorials and documentation available to get started:
Getting Started with Java EE 6 Applications
Java EE & Java Web Learning Trail
I can choose either MS Sql Server or Oracle as my back end.
Java uses an unified low level API called JDBC (JPA being a higher level API built on top of it) to interact with a database so choosing one or the other doesn't really matter from a Java point of view and it won't make any difference for a college project so pick the one you want to work with (if you already used SQL Server for your C# project, you might want to get some experience with Oracle).
Related questions
What to learn for making Java web applications in Java EE 6?

Does the Eclipse IDE support JSF 2.0?

I have the WTP 3.1 plugin installed and have also installed the Glassfish v3 plugin. I am able to register my server.
When I create a dynamic web project, I can see that the maximum dynamic web module version available is 2.5. I then choose the default configuration for Glassfish v3 but, when I look at it JSF, it is not selected by default. When I select it, the maximum version available is 1.2.
I want to use JSF with facelets - does Eclipse support this? I can't seem to find anything helpful on the Eclipse WTP site.
Java EE 6 / JSF 2.0 is relatively new. Most tools are already ready, but Eclipse has to catch up it yet.
The status as far:
IntelliJ Ultimate Edition was early in this. Unfortunately not freeware. Note: the free Community Edition doesn't provide tools for much of Java EE, let alone JSF.
Netbeans 6.8 came a bit later almost full Java EE 6 support, including JSF 2.0.
Eclipse for Java EE planned to support Facelets in Galileo, but it was cancelled and postponed to the successor Helios which is currently in one of its latest Release Candidate stages been released at 24 July 2010. Helios for Java EE will ship with full fledged Java EE 6 support, including JSF 2.0.
As of now, it just works fine in Eclipse Ganymede/Galileo when you select JSF 1.2 and uses JSF 2.0 libraries. You'll only miss some code assistance which may be useful for JSF 2.0, but you can write code as good yourself.
Use Eclipse with JBoss Tools Plugin. It has support for JSF2 and CDI.
http://in.relation.to/14750.lace
Note, that you can do JSF 2.0 development in Eclipse, but not with as much tool support as might come later.
You can always edit xhtml files directly as XML-files (and have the namespaces registered), and have Glassfish deployments. I've done that, with stock Eclipse 3.5.2 Java EE edition, and the Glassfish plugin.
Have a read on http://weblogs.java.net/blog/2009/05/18/using-ide-write-jsf-20-app
It describe in details on how to setup your eclipse for jsf 2.0 development.

jre 1.6 with GWT

I have an application written in GWT 1.4 I am all set to up grade it to GWT 1.7/2.0 Before starting i just want to confirm that GWT 1.7.1 above versions supports jre 1.6??
From version 1.5 of GWT you can now use the Java 5.0 (JDK 1.5) language constructs as well, e.g. generics, enums. This means that you have a much greater chance of sharing code between the client and server sides of your application, if the server-side is written in Java.
The JRE Emulation Library of GWT supports more methods and has been updated with generics support. But it is still not a complete implementation of the JRE standard library, e.g. no BigDecimal, no file support, etc.
Having said all of that, I am not sure exactly what you mean by "supports jre 1.6"?
GWT. 2.0 requires 1.5 or later. Refer to http://code.google.com/webtoolkit/gettingstarted.html
I have been running with 1.6 for a while now with no issue.

Why does NetBeans still use JDK 1.5?

This question has always bothered me. And the NetBeans wiki does not say anything about that... Besides, JDK 1.5 will complete the End of Life process very soon and 1.6 has been around for quite a while.
So why do they still use version 1.5 even if 1.6 is available on all Netbeans-supported platforms?
The NetBeans team requires JDK 1.5 to ensure that the resulting jars will run on a 1.5 JVM.
You don't need to build it with JDK 1.5 if it's just for your own use. But if you're planning on developing modules, you'll need to use 1.5 to ensure everyone else can use your modules.
If you compile with 1.6, you can use the -target 1.5 to generate classes that will load into a 1.5 JVM. The downside is it will not prevent you from using classes or methods introduced in 1.6 (eg: StringBuilder). It will load in a 1.5 JVM, but will fail with the likes of ClassNotFoundException, NoSuchMethodErrot, or NoSuchFieldError.
I've only used Netbeans a few times, but I know you can download Netbeans 6.7 with the latest version of the Java SE 6 SDK (6u14).
Unless you meant with the Java EE 5 SDK. J2EE 5 is just a specification, implemented by Sun's GlassFish stack, Jetty, Apache Geronimo (and partly by Apache Tomcat), etc...
Sun's Java EE 5 SDK is just the Java SE 6 SDK with the GlassFish application server and other optional downloads that implement other parts of the specification.