Reputation: 1019
Am I seeing a fundamental difference between how Java Standard API and Java EE API's are implemented?
Java Standard API is up here, implemented by Oracle, for anyone to use in Java programming: http://docs.oracle.com/javase/7/docs/api
But why is it that makers (i.e. IBM, RedHat, Oracle) of application servers (i.e. JBoss, WebLogic, WebSphere, GlassFish, WildFly) come up with different implementations of the same Java EE API?
Example-1: RESTEasy is an implementation of JAX-RS available with JBoss
Example-2: HornetQ is an implementation of JMS available with WildFly
I guess I should ask, "What does it even mean to have this EE API page on the Oracle website since every vendor has its own implementation? Is the link below just for a show?" https://docs.oracle.com/javaee/7/api/
Upvotes: 2
Views: 83
Reputation: 42936
Your initial assumption is not entirely correct.
There are in fact several implementations of Java SE besides the most widely used oracle distribution. The biggest ones are OpenJDK and IBM's JDK.
So, the Java SE API's have a spec just like Java EE does, each with different implementations. The oracle api links you posted are merely requirements for the interfaces, but there still needs to be an implementation for these APIs whether it's Java SE or Java EE.
Upvotes: 2