Status of JSTL in Java EE 6 - java

It seems JSTL is no longer even mentioned in the Java EE 6 Tutorial, Oracle instead favouring the JSF libraries heavily over the older jstl core libraries. Does this indicate that it is now unmaintained and will be scrapped in future version of the platform?
edit:
Apparently the documentation for the JSF tags includes documentation for the core tags. I'm not sure whether that means they are considered to be of core function any more though, since they aren't even any examples in the tutorial.

I downloaded the PDF, it's mentioned.

Related

Can Struts 1 (which is EOL) work with Java EE7?

I understand that Struts 1 is EOL but I would like to know if a project that uses Struts 1 can work with Java EE7 or do I have to stop using Struts or start using Struts 2
I don't seem to find any documentation of that matter.
Struts only uses Servlet API from the EE implementation. As far as I know it's designed to be backward compatible with other servlet specifications. But you can try it on your own risk, because it might not be built or tested under the new specs. The best approach is to build the framework yourself to see if you have any problems with it. On the docs site (which included with the distro and no longer available online) and on Maven site you can find which Servlet API was supported, this information is also in release notes.
You can use old Struts as I already said on your own risk, means this framework is no longer supported. If you need a support from the community then you should upgrade to Struts 2.

What are the official resources for the Java EE APIs spec?

I know a few official sources like the java Java EE 6 tutorial.
But I was wondering, which one are the official sources for properly learning the spec of every API and any other resource related to the Java EE environment? Which resources ppl use to keep track of future versions without being actively participating of any container or spec development?
I hope this question is specific enough by suggesting only official links.
EDIT:
About https://java.net/projects/javaee-spec/pages/Home. It has a lot of links for several document versions and optional content. I wanted just one single resource for each API, a complete version. Let's take for example the annotated ECMAScript 5 spec (http://es5.github.io/).
Assuming the links are permanent it would be very nice to point out the complete documents for the APIs from Java EE 6.
Java EE 6 APIs are available at:
http://docs.oracle.com/javaee/6/api/
These can be downloaded from:
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-eedocs-419425.html#java_ee_6u1_docs-JPR
https://java.net/projects/javaee-spec/pages/Home
But not really sure why you couldn't google that.

Java docs for jboss server?

I was just wondering where exactly i could get the javadocs for jboss libraries?
Whenever i mouse over some element from a certain framework(eg. servlets) pops up with
Note: This element neither has attached source nor attached Javadoc and hence no Javadoc could be found.
I am currently using Eclipse.
You need javadoc for the Java EE specifications as JBoss is an implementation of it.
So get the javadocs for Java EE specification that your JBoss is implementing.
You can download the javadoc for Java EE 6 from here :
Java EE 6 Update 2 Javadocs
You should actually be looking into getting the generic JavaEE API documentation into your Eclipse, and not the one specific to JBoss. After all (in a perfect world) your code should only depend on generic JavaEE features, not the JBoss implementation.
As for how to get JavaEE Javadoc, these two questions should explain it all:
Enabling full documentation for Java EE in eclipse
Integrating Javadoc for Java EE 6 API into Eclipse

Is Apache Commons projects tied with Java edition?

I have a question about Apache Commons projects. We know there are many nice classes and methods are available in Apache Commons Projects. But it is related to particular Java edition, I think. If I start use Apache Commons projects now, when Java updates itself to 1.8, I have to make sure Apache Commons projects has the similar update before I update to Java version 1.8? Having some 3rdparty libs is a good thing but I always worry about the compatibility between them and the main programming language I am using.
In general Java is fully backwards compatible, so if you start using e.g. commons-io in JSE1.6 it's going to work in JSE1.8 as well. Working with Java since 1999 I've never seen any issues regarding backwards compatibility.
EDIT: As long as Oracle does not change its compatibility policy, you should not run into trouble. If you later run into trouble anyway, you still have the source to fix it on your own (but may have to give back to the community depending on the license).
The Apache Commons projects update a lot more often than the JDK does. I would strongly advise to keep you libraries current. Even if only to get the newest fixes. That will also take care of any possible problems with JDK versions (which are backwards-compatible and have changed very little over the years and could be considered rather stable).
But it is related to particular Java edition, I think.
The only case where I have ever seen this be true with Apache Commons, Jakarta Anything or Spring was when one version used new JVM and/or compiler features. For example, Spring 2.5 had several jars which were for 1.5 and newer which means that in theory they would work on Java 5 through Java 8 without any bugs caused by the platform. You just couldn't use them on a Java 3 or 4 VM.
This is pretty much the norm throughout the Java community, for SE anyway. JavaEE compatibility may break because it's a matter of library compatibility and development methodology.

#WebServlet annotation support in java 1.6.013

I'm stepping into the world of Servlets and 3.0 in particular and I saw certain methods and annotations used in examples and tutorials which talked about this being available when JAVA 6.0 is released (which it has) and now when I try to use the above annotation for example in Eclipse it does not recognize it although I have java 1.6.013 installed and in Eclipse it says I'm using jre6.
When I tried googling it a bit I stumbled on this page regarding WebServlet Annotation where it states on the top right side: DRAFT.
what does that mean?
Is #WebServlet supported in 1.6.013 or not? is the problem with my Eclipse?
Thanks a lot for anyone who can lend me a helping hand
EDIT: I now understand I've made a bit of a mess but there is a Jar I've downloaded of the Servlets 3.0 API which at least for the #WebServlet annotation works but gives me hell.
Servlets are defined by a JSR - the Servlet Specification in JSR-154. Annotations for servlets were introduced in version 2.5 of the servlet specification. All containers that implement the 2.5 version of the specification will support annotations; your problem might lie with the container not implementing it. You can refer section SRV.14.5. Annotations and Resource Injection of the servlet spec where it is defined in black and white.
By the way, you are looking at the javadocs of Java EE 6 (which is in draft at the moment). Servlet Spec 2.5 is part of Java EE 5.
PS: The #WebServlet annotation that you are referring to, makes its appearance in Servlet Spec 3.0, which is in draft, and is a part of Java EE 6. At the time of writing this, no container is available for download that supports Servlet Spec 3.0; not even a RI (reference implementation) is available. You will find experimental builds though, but be forewarned, the spec itself is not final, so experimental builds are bound to interpet and implement the spec differently.
PPS: Glassfish v3 Preclude Preview seems to have support for most of the Java EE 6 standards. A comparison sheet provides info on what is available in Glassfish v2, v3 Preclude and v3 Preview.
At this time, GlassFish v3 provides the most complete implementation of EJB 3.1 and Servlet 3.0 along with other Java EE 6 specifications.
Following up on Vineet, simply put, 3.0 isn't in use right now, so you should focus on Java EE 5 and 2.5.

Categories