Tuesday Apr 26, 2011

Oracle's JDK 7 list of supported platforms

Henrik has recently posted a list of platforms that will be supported when Oracle's JDK 7 first ships (still planned for late July this year). At a high level, the list is very similar to what Sun used to support : Windows, Linux and Solaris.


While Oracle is committed to delivering the JDK on Mac OS X, no date is yet available for this. On the GlassFish side we're tracking closely the progress made by our fellow colleagues in the JDK team with our Mac users relying on the very fine OpenJDK 7 binaries for MacOS X for the time being.

The entry also mentions other operating systems as well as mostly embedded architectures (ARM, Power) via Java SE Embedded.

Friday Mar 25, 2011

Sound bites from Silicon Valley - EclipseCon

Another week, another Java conference. EclipseCon was held earlier this week in Santa Clara and one of the highlights was the joint IBM/Oracle keynote with Oracle's Mark Reinhold and IBM's John Duimovich discussing the future of Java (7, 8 and 9) and common work in the OpenJDK project.

EclipseCon 2011

Other than the rather good press coverage, here are some not-so-random tidbits :

• Reinhold: "Twitter did not exist when last major JDK release shipped (2006)" (oracletechnet)
"Java 7 release date still July 28 2011" (ianskerrett)
• Duimovich of IBM: "IBM joined OpenJDK to drive innovation, collaboration, compatibility" (oracletechnet)
"The pace of innovation in the Java platform is going to get a lot better" (Mike Milinkovich)

Other JavaEE-related content included Sahoo's and Arun's "Developing OSGi-enabled Java EE Applications with GlassFish" tutorial (with full description and screencast), an update on Dali for Java EE 6, a session on the intersection between JPA, JAXB and JAX-RS and more.

Wednesday Feb 23, 2011

Oracle now ready with JDK 7 Developer Preview

As promised in his earlier "JDK 7 is Feature-Complete" post, Oracle's Mark Reinhold now announces the availability of JDK 7 Developer Preview.

This is not quite a beta but it has close to 500 bugs fixed since the feature freeze from about a month ago.


Just like any software approaching the release line, it will get harder by the week to get fixes in (they'll need to be serious bugs and require rather risk-free fixes) so you should really consider testing your software on this build and report any issues.There is a dedicated forum for feedback for this release.

There is no Mac OS X version yet, but this link should get the Apple aficionados happy.

Monday Feb 21, 2011

"Java and Oracle, One Year Later", the replay

The OTN live session dubbed "Java and Oracle, One Year Later" is now available as a replay. In about 20 minutes Ajay Patel, VP Product Development, covers mostly future directions for Java, the role of the (much) larger Java community, a discussion about the JCP, upcoming JavaOne conferences, JavaFX and last but not least: GlassFish.

Terrence Barr has extracted some key quotes by Ajay Patel, check them out!


Whether communication (in this case with the Java community) is an art or a science, the best way to improve is to practice. Expect more from Oracle and provide feedback!

Saturday Jan 22, 2011

Recent adoption surveys - JDK, Java EE, GlassFish


Remaining true to their viral marketing approach, the JRebel guys posted results for another "productivity report" with comments on the reactions. With the obvious caveat about surveys in general and self-selected samples in particular, the figures are encouraging for Java EE adoption and GlassFish deployment figures.

In our experience, the more people use GlassFish 3.x the more they adopt Java EE 6 and the lighter their application becomes with no third-party frameworks (see this recent story). This may in turn lower the requirement for JRebel.

In this other TheServerSide developer survey, the take-away is "Java 6 and Java EE 5 are the winners". Looking at the details, that's more than 70% of developers (at home, 64% @ work) reporting usage of Java EE 5 or Java EE 6 and thus being now free from EJB 2.x and XML-hell.

In his post, Richard is a bit disappointed with the adoption of Java EE 6, but with 30% of the developers using Java EE 6 at home less than a year after the specification shipped and with GlassFish as the only available implementation for a while, this sounds to me like very strong adoption. Java EE 5 adoption didn't happen overnight. Remember, it shipped in 2006.

Sunday Jan 16, 2011

One step closer to JDK7 - feature complete

JDK 7 has reached another the "feature complete" stage. Mark Reinhold explains what that means and what's left before the Developer Preview release in a month or so. Henrik also has a piece on this milestone, sharing his confidence that the announced roadmap (final version this summer) will be met.

You're encouraged to grab a recent build of OpenJDK (available also on Mac OS X), try it out with NetBeans 7.0 beta (familiarize yourself with project Coin) and possibly also with GlassFish (although clearly not yet a supported platform) and provide feedback for it all.

Note that Java EE 7 will likely require Java SE 7 (like Java EE 6 requires Java SE 6).

Thursday Dec 30, 2010

GlassFish in 2010 - What a year!


A lot has happened over the past 12 months! For the GlassFish team as for many people that came from Sun, it's been a challenging, yet exciting year.

It all started in January with the EU finally agreeing to the Sun acquisition by Oracle and a first set of changes. Later in March the GlassFish roadmap committed Oracle to the open source project with multiple supported releases in the next few years (with additional heads in the team).

Later that year, the external contributions from the community increased significantly and by June the team had released the "100-day" (Oracle-branded) 3.0.1 release, right in time for the 5-year celebration of GlassFish (with five years of TheAquarium soon after).

While re-stating the commercial strategy for GlassFish, the team worked hard on releasing no less than seven 3.1 milestones, producing and aggregating screencasts. This all lead up to the JavaOne conference with very nice reference customers, clear direction for GlassFish from top-level Oracle management and overal momentum throughout the conference. In Java SE land, "Plan B" was shared with the community.

With Java EE momentum building up, GlassFish was busy with the 3.1 work, adapting to the new java.net infrastructure, and adopting new HTML 5 features. In the meantime OpenJDK, the JCP and others made the news with IBM joining OpenJDK, followed by Apple soon after with JCP elections and JSR votes confirming the proposed roadmap (JavaSE 7 mid-2011).

You can browse through a number of additional posts all tagged with frontpage.

Monday Dec 06, 2010

Quartet JSR Votes - The results are in!

Java Community Process Logo

Some three weeks ago, following community discussions and feedback, Oracle announced that JSRs for Java SE 7, Java SE 8, along with two others for Coin (small language changes) and Lambda ("closures") were filed and up for voting. These two earlier posts gave some context about the "P" in JCP : "How to Read a JSR" and "The JSR Inception Votes by the EC").

The results are now in, and as Henrik Stahl discusses on his blog, all four submissions pass the ballot. Here are the vote details :

• Java SE 7 Release Contents (JSR 336): 12 YES, 3 NO, 0 Abstain.
• Java SE 8 Release Contents (JSR 337): 12 YES, 3 NO, 0 Abstain.
• Lambda Expressions for the Java Programming Language (JSR 335): 13 YES, 1 NO, 1 Abstain.
• Small Enhancements to the Java Programming Language, aka Project Coin (JSR 334): 13 YES, 1 NO, 1 Abstain.

Google and Apache voted no on the umbrella JSRs. Overall, neither the results nor the comments (check them out in the result links above) are really surprising for anyone that has been following the recent Java news. With this ratification, the Java standard will progress through the Java Community Process while the open source reference implementation will be delivered through the OpenJDK project. Java SE 7 is due in 2011 (see OpenJDK roadmap) and Java SE 8 in 2012. Java is moving forward again!

Wednesday Nov 17, 2010

How to Read a JSR

As promised, here is a basic Reading Guide to a Java Specification Request (JSR). Technical terms are described in the JCP process (current version is 2.7); the initiation process is in Section 1. I've added some historical background and context.

Examples and comments are as applied to the 4 JSRs just submitted: 334 (Coin), 335 (Lambda), 336 (Java SE 7) and 337 (Java SE 8)

Caveat! I do not work for the JCP office and if there are any discrepancies between the excerpts below and the JCP Document, the official rules win, hands down!

The Submitting Member is the JCP member that is submitting the JSR; for these 4 JSRs, it's Oracle.

The Specification Lead is the JCP member, or the employee of a JCP member that will lead the Expert Group. In our case they are: Joe Darcy (Coin), Brian Goetz (Lambda) and Mark Reinhold (Java SE 7 and Java SE 8).

Coin targets Java SE 7; Lambda targets Java SE 8.

The Initial Expert Group Membership is an initial list of JCP members that have already expressed interest to the EG Lead to participate in the EG. Normally that list is expanded further before the EG starts working.

Increased Transparency was one of the drivers for JCP 2.7 and each JSRs must include a description of how transparency will be achieved in the EG in that is in Section 2.15. The new transparency requirements and infrastructure means that interested parties can follow the activities of the EG without being a member of the EG.

Every JSR has a link to a form to nominate experts to an EG; for instance this one is for Coin. The EG lead decides who to accept; normally it needs to balance representation and expertise with manageability.

The Supporting This JSR section lists JCP members that support the initiation of the JSR. Normally, but not always, these members will also be in the Initial EG Membership. It would be reasonable to expect that EC members that support a JSR will vote for it, but, AFAIK, there is no requirement for that.

Section 2.2 indicates the target platform and section 2.4 what Executive Committee will vote on the JSR. All 4 JSRs will be voted by the SE/EE Executive committee - see the results of the most recent election.

The JSR review is a 2 week period when anybody can review and comment on a new JSR. Comments can be posted through a BBoard; for example this one is for Coin.

EC voting is described in Section A.5; refer to it for a full description but, in a nutshell:

  • "A.5.3 EC Members may cast two types of votes: "yes" and "no". Alternatively, a Member may explicitly abstain or, in the extreme and undesirable case, not vote at all."
  • "A.5.4 Only "yes" and "no" votes count in determining the result of an EC ballot"
  • "A.5.5 Except where noted otherwise in this document, EC ballots are approved if (a) a majority of the votes cast are "yes" votes, and (b) a minimum of 5 "yes" votes are cast. Ballots are otherwise rejected.
  • "A.5.9 EC ballots to approve UJSRs for new Platform Edition Specifications or JSRs that propose changes to the Java language, are approved if (a) at least a two-thirds majority of the votes cast are "yes" votes, (b) a minimum of 5 "yes" votes are cast, and (c) Sun casts one of the "yes" votes. Ballots are otherwise rejected."
  • Note that there are a number of other rules described in that section.

Applying the voting rules to the quartet, we have (I'm awaiting confirmationCorrected!):

  • Coin and Lambda require that 2/3rds of the votes cast are YES, a minimum of 5 YES votes, and Sun/Oracle must vote YES.
  • Java SE 7 and Java SE 8 require that 2/3rds of the votes cast are YES, a minimum of 5 YES votes, and Sun/Oracle must vote YES.

Ballot Results will be posted at the JCP site, in the JCP Blog, and in the JCP Announcement Board. We will also post an update here, at TheAquarium.

I think this covers the basics. Check out the full JCP 2.7 process if you want all the details!

Added - I talked with Patrick Curran to confirm under what rule each JSR falls. Since Coin and Lambda have language changes, they require 2/3rds, and since Java SE 7 and 8 include Coin and Lambda, respectively, they also require 2/3rds.

Tuesday Nov 16, 2010

The 4 Beatles and the 4 JSRs

Synchronicity? The Beatles appeared on iTunes today and Mark announced the filing of quartet of key JSRs:

JSR 334: Small Enhancements to the Java Programming Language
JSR 335: Lambda Expressions for the Java Programming Language
JSR 336: Java SE 7 Release Contents
JSR 337: Java SE 8 Release Contents

Updated - Check out How to Read a JSR to navigate through the information in the JSRs and understand how the voting works.

Sunday Oct 31, 2010

Last Day to Vote in the JCP EC Election

Monday, November 1st, is the last day for JCP members to vote for the Executive Committee.  Members follow the JCP 2(.7) to vote using the Candidate Lists for two types of seats, ratified and elected, in the ME and SE/EE ECs.

This is the first election held under Oracle and it generated a number of comments. I find encouraging that Oracle's participation in the public conversation has been increasing, including the recent comments on Hologic and on 'stacking' the board from Adam Messinger.  I wish the JCP BBoard set for this had seen more traffic, but at least Scott Shapiro from Hologic used it to clarify their position.

JCP Members vote online here using instructions that were sent to them earlier.  Final results should be posted on Tuesday.

Tuesday Oct 26, 2010

Oracle's Comments On JCP EC Nominations

Last week the JCP released the List of Candidates to the JCP Executive Committee. Since then, Oracle has issued a couple of comments and, given the interest in the topic, I'm copying them below.

In a post to the JUG Leaders mailing list, Oracle commented on their choice of Hologic for one of the ratified seats; I'm coping the first paragraph verbatim below; check the full email here.

"There has been quite a lot of discussion over the past week about our JCP EC nomination. We thought we would offer our perspective. We nominated Hologic, as with Credit Suisse earlier, to inject some much needed Java end-user and business perspective into the Executive Committee, as opposed to standards, technologist, technology vendor, and developer community perspectives - all of which are already well represented. Those roles also overlap, as we have well-recognized technologists, like Josh Bloch, who are also representing vendor interests. JCP members may disagree with the need for more end-user perspective on the EC, but we think it's an important view that has been underrepresented to date. Having the perspective of a company whose business depends on Java technology -- not as a technology vendor, but as an informed consumer of Java technology -- is valuable."

Then, in a separate statement, Oracle commented on Doug's absence and Java SE 7 and 8:

"Oracle highly values Doug Lea's contributions to Java and hopes to continue to engage him in the community moving forward. We were disappointed with his decision to not seek another term on the JCP Executive Committee. We believe that the EC is ready to move Java SE 7 and 8 forward, and we will be submitting those specification requests very shortly. With the specification requests for SE 7 and 8 in place, the JCP's normal mechanisms for advancing Java - technical work going on in expert groups, subject to EC approval - will be functioning again. Although we are committed to improving the JCP, we also believe that the JCP is fully capable of supporting vigorous debate and deep involvement and contributions from a variety of individual and corporate participants, and we feel confident that the vast majority of EC members would agree."

Sunday Oct 17, 2010

GlassFish Tips and Links #12: Maven on Helios, Basic Authentication, Jersey 1.4, Bye AMX, JavaSE 6u22...

Recent Tips and News on Java EE 6 & GlassFish:

Informational Sign


Maven troubles on Eclipse Helios causes problem deploying app to GlassFish
• ... but see Harald's tutorial
Basic Authentication in GlassFish 3 (Maksim Sorokim)
Jersey 1.4 was released on September 11th (Paul)
More on Web Sockets and HTML5 in Glassfish - covers using the SQL API (Santiago)
Update to deploying webservices on Glassfish 3.1 cluster (Bhakti)
Spring vs. Java EE and Why I Don't Care (Eberhard Wolff)

GlassFish 3.1

Admin UI is now 100% based on REST; no more AMX (ludo)
Progress in moving GlassFish to Kenai infrastructure (eduardo)

Links and News

eApps Cloud Release notes v .99.2 - Beta will include Liferay on GlassFish
Habari OpenMQ Client (library for Delphi and Free Pascal to access OpenMQ)

From Oracle

• Countdown to decommissioning SunSolve "later this year"
   Goodbye SunSolve, Helloooo MOS!, SunSolve Retirement Notice - Oct'10 and FAQ
• Sun GlassFish Enterprise Server 2.1.1 p8 now available.
• JavaSE 6u22 is out with security bugs - Release Notes, twitter @rolilad
• Oracle's October Critical Patch Update at eSecurityPlanet.

En EspaƱol

Control del nivel de aislamiento transaccional en JPA
EJB 3.1 en Porlets de Liferay (Apuntes de Java)

Event News

Slides and Trip Report for SVCP 2010:
   [1], [2], [3], [4], [5], [6].
This Week's Events
• Oct 19th, YaJUG, Luxembourg (details)
   Java EE 6 + GlassFish, Alexis MP
• Oct 20th: eBig Java SIG, Oakland/CA (details)
   Java EE 6 = Less Code + More Power, Arun Gupta
New Events
• Dec 6-Dec 8: NYC - Marakana, (details)
   JSF 2.0 Training Course, Kito Mann
• Dec 13-Dec 17: NYC (details)
   Programming with Java and Java EE 6, Yakov Fain, Farata Systems

Monday Jul 19, 2010

Java SE 6 u21 is Now Available

Java SE 6 update 21 is now available (Downloads, release notes, bug fixes).

This release includes performance improvements, support for Oracle Enterprise Linux, Oracle VM, and Google Chrome, and Visual VM 1.2.2. The Java EE SDK still includes u20; an update with u21 is tentatively scheduled for next week.

The actual release was a few days ago but the official post just came out. BTW, Java SE News is now at BOC; I can't wait for BSC and BOC to be merged so we only have to track one site.

Wednesday Oct 07, 2009

JCP 2009 Elections are Now!


The 2009 JCP Elections are here. The JCP has been trying to improve transparency with the new JSR 215 rules (JCP 2.7 MR); now it is your turn.

Between now and Oct 14th you can nominate names for the two open seats (Java SE/EE and Java ME) here. Then, from Nov 20th til Oct 2nd, you can vote on the seats.

Check out the Call for votes and the Election Overview.