Will Netbeans and Glassfish survive the Sun-Oracle merger ?

Well the Sun-Oracle merger throws more questions than answers everyday, though Oracle’s intention on Java cannot be doubted, on the other hand the fate of Netbeans and GlassFish is uncertain. Oracle also own WebLogic server and is more popular than Glass Fish and in all probability development on GlassFish might end in the near future.

But on Netbeans front the story can be different, though Oracle currently promotes Eclipse IDE, it might change its tune in the near future, Netbeans is a neat package and good IDE for Java/J2EE development. Currently Netbeans bundles Glassfish,Tomcat and even WebLogic Server.

And the larger impact could be on Open Source database promoted by Sun, MySQL. Few years back Sun purchased MySQL and MySQL is one of the most popular database used for websites and other applications. And MySQL is a direct competitor in these areas, So there will be many players watching Oracle’s next move.

Well before all this European regulators need to clear the merger as Oracle is buying out Oracle’s direct open Source competitor in MySQL (currently owned by Sun).

Lets see how things play out in the near future.

What are the JSP implicit objects ?

The Objects available in any JSP without any need for explicit declarations are implicit Objects. All of these objects have atleast page page level scope.

pageContext:The context for the JSP page. Provides access to various objects including:
servletContext: The context for the JSP page’s servlet and any web components contained in the same application. See Accessing the Web Context.
session: The session object for the client. See Maintaining Client State.
request: The request triggering the execution of the JSP page. See Getting Information from Requests.
response: The response returned by the JSP page. See Constructing Responses.

Apart from the above objects some more functionality is provided by following objects

param: Maps a request parameter name to a single value
paramValues: Maps a request parameter name to an array of values
header: Maps a request header name to a single value
headerValues: Maps a request header name to an array of values
cookie: Maps a cookie name to a single cookie
initParam: Maps a context initialization parameter name to a single value
Finally, there are objects that allow access to the various scoped variables described in Using Scope Objects.

pageScope: Maps page-scoped variable names to their values
requestScope: Maps request-scoped variable names to their values
sessionScope: Maps session-scoped variable names to their values
applicationScope: Maps application-scoped variable names to their values
When an expression references one of these objects by name, the appropriate object is returned instead of the corresponding attribute. For example, ${pageContext} returns the PageContext object, even if there is an existing pageContext attribute containing some other value.