Monday Apr 18, 2011

GlassFish Geo Map Updated - Mar 2011

One of the multiple ways GlassFish adoption is tracked is by doing a reverse geo-lookup on the IPs from the GlassFish Admin Console and plotting them on a Google Map. The data is not very precise as not everybody uses the web-based console and proxies and firewalls get in the way but this is an interesting visual representation. You can zoom in/out and the numbers for the visible area are updated on the right bar.

The bottom left corner allows you to view the monthly or the cumulative total. The "IP" labels represent installations and "hits" count repeated GETs.

A live version of map can always be seen at and a snapshot from Mar 2011 is shown below:

The world is certainly becoming pink :-)

This data has been gathered since Feb 2007 and has > 21 million hits from ~1.2million unique IPs through Mar 2011. The data for Mar 2011 is the highest so far: 691k hits from 48k unique IPs. This can certainly be attributed to the GlassFish 3.1 launch in the late February.

Do you know there are GlassFIsh users in Greenland as well ? I'm still waiting for research stations in Antartica to use it :-)

Go ahead, take a look at the live version and see who is using GlassFish in your neighborhood! Drop a comment on this blog if your city is shown in pink color.

Technorati: glassfish adoption geomap google mashup

Wednesday Apr 13, 2011

JAX London Spring 2011 Trip Report

Sebastian Meyen, the chair of worldwide JAX Conference kick started JAX London 2011 with a very passionate opening session highlighting that JAX is all about Java, that they are comitted to Java, and not going to dilute the content. This is the 10th year of JAX conferences. Even though originally the word JAX was coined as an acronym for "Java Apache XML" indicating the open source nature and everything XML around Java but now its more popularly known as JAX.

The successful recipe for the JAX conference is "passion for the Java platform & ecosystem" and "a pramatic mix with development, architecture, agile, and other concepts around Java". In Sebastien's words "Java is a huge stake, heavily growing, innovating and worth focusing on it" and is a "rich environment for innovation". The JAX Innovation Awards giving $10,000 for the most innovative contributions to Java further proves their commitment to Java. Do you have the most innovative Java technology, most innovative Java company, and the top Java ambassador to recommend ? Submit now!

The first keynote of the day was by Dan North on the "Patterns of Effective Delivery". He highlighted several design patterns and the key ones were:

  • Spike and Stabilise - "Spike" is the non-TDD code written during the development cycle and then TDD applied to stabilise it for production.
  • Ginger Cake - About me legitimizing copy/paste, look for abstractions afterwards. Start WET and then DRY it.
  • Create Urgency - Create lots of instances where you are surprised, optimize for deliberate learning than for deliberate practice. Create an urgency for yourself for technologies that are genuinely useful. Difficult to change your thinking consciously, need a crisis.
  • Socratic Testing - Using the process of automated tests to draw out knowledge about the code.
  • Fits In My Head - Keeping the design small enough such that the entire design fits in your head, then you can reason the whole thing.

Being the chair of Java EE track, I spent most of my day attending the sessions there. The first session by Ales Justin explained how to run a Java EE application on Google App Engine. His slides are available below:

Ales explained his experience of building a sample application using JPA2, JSF2, Bean Validation, delpoing on GAE. The slides very well capture the restrictions of the platform and how he worked around them. The GAE API was even abstracted such that a pure Java EE application can be written and thus be portable across multiple application servers.

David Blevins's session on Fun with EJB 3.1 and Open EJB was indeed a lot of fun. He provided a good history of how the EJB and OpenEJB have evolved over years. There were lots of code samples highlighting the ease-of-use improvements done in EJB 3.1such as @Stateless, @Schedule, @Asynchronous, @Singleton, Embeddable EJB API and many others. I particularly loved his statement:

People who complain about EJB are stuck in 2005 and believe ignorance is my pride.  Its testable, light, and pretty great!

Seriously, if you complain about EJB being heavy, non-functional, incomplete, the following code fragment is all it takes to create an EJB:

public class MyEJB {
    public String myMethod(...) { }

and that too packaged in a WAR file, no deployment descriptors or any special packaging. Do you still think its heavy weight ? Think again!

David's slides are available below:

Doug Clarke talked about "Java Persistence API 2.0 with EclipseLink", Joseph Shum talked about "Integrating Enterprise Applications into Liferay Portal", and then Dan Allen talked about "Using CDI Extensions to make a better Java EE". Dan showed several examples of how CDI extensions can be authored easily to extend capabilites of the existing platform. Their slides will be available on

And I also gave two presentations:

  • GlassFish 3.1 - Simplifying your Java EE 6 Development and Deployment
  • OSGi-enabled Java EE Applications using GlassFish (in the OSGi track)

The first talk explained how several features in GlassFish 3.1 such as:

  • Deploy-on-Save (in NetBeans and Eclipse)
  • Active Redeploy (preserve sessions across re-deploys at CLI or NetBeans and Eclipse)
  • 29% better startup/deploy/redeploy cycle
  • Application runner (java -jar glassfish.jar foo.war)
  • Maven integration (mvn gf:run, gf:start, gf:deploy, etc)
  • Embedded GlassFish

and many other features make GlassFish an extremely productive development environment for your Java EE 6 applications. And then features like:

  • High Availability, Clustering
  • Centralized Administration
  • Application-scoped Resources
  • Application Versioning
  • 33% better High Availability performance
  • Better scalability - upto 100 instances per domain
  • RESTful monitoring and management

make it an equally compelling deployment platform. The slides with all the details are available below:

Where are you deploying your Java EE 6 applications ?

The second talk explained the why/how of OSGi-enabled Java EE applicatins. The slides are available below:

The first few slides are OSGi introductory so jump ahead to slide #22 for all the interesting stuff. The screencast #38 showcase how to build an OSGi-enabled Java EE Applications using Eclipse and GlassFish and comes with the complete and detailed instructions. The screencast #32 shows the same using NetBeans.

The day ended with a 1.5 hrs interactive Java EE 6 hackathon and more details on that in a later blog.

Here are some pictures captured from the London visit:

And the complete album is available:

Technorati: conf jaxlondon javaee6 osgi glassfish cdi gae google ejb openejb liferay

Wednesday Sep 29, 2010

GlassFish scales and configures very quickly for Micello - the "indoor Google Maps" company

We all (at least majority of us) use some sort of maps to reach from one destination, say home, to another destination, say a shopping mall or a convention center. But once you've reached the mall then you switch to a different set of tools to navigate that is typically either a paper flyer or sign boards within the mall. fills that gaps by providing maps for any indoor locations like airport, shopping malls, convention centers, retail centers, and college campus.

Their application is built using "scalable stack" of GlassFish and MySQL, uses RESTful Web services, and has given them a 99.9% uptime in the past few months - no wonder its used to create indoor maps for 50 malls in Singapore. Listen all the details on Micello from Prakash in the video below:

Micello has been talked about at,, and mashable.

How are you using GlassFish today ?

Technorati: stories micello google maps glassfish mysql

Friday Jul 06, 2007

Sun Web Services Search Engine

Google allows to create Custom Search Engine by restricting search results based on websites and pages. I created a search engine that will let you search contents from all the Web services sites from Sun Microsystems.

"Sun Web Services Search Engine" search contents from the following websites:

Google Custom Search

This is also accessible from the right hand column at Hope you find it useful!

Custom Search Blog gives you all the juicy details of how it works behind the scene.

Technorati: google cse webservices glassfish metro

Wednesday May 30, 2007

Google Developer Day - May 31, 2007

Google is hosting Google Developer Day on May 31st in 10 countries (US, Brazil, United Kingdom, France, Spain, Germany, Russia, Japan, Australia, and China) simultaneously. The distribution all over the globe ensures that major time zones in the world has an opportunity to attend the event in person or virtually from US and United Kingdom. The registration is now closed for sometime but I registered a while ago for the Mountain View location and so looking forward to an exciting time tomorrow. Here are the sessions I plan to attend:

If you can't view the live web cast then the videos will be posted at youtube afterwards. Drop a note if you are attending and would like to meet up over lunch or otherwise.

Technorati: googledeveloperday Google gdd07 gdd

Monday Jan 29, 2007

Gmail "Server Error"

Not just me but multiple other folks have seen it at different times. Read 1, 2, 3, 4, and many others.

How can such a service be a down ? May be that's why they are still in BETA.

UPDATE: Yet again, GMail was down for 12 hours on Mar 1, 2007. The timing of this new GMail promotional video seems to be ironical ;-)

Technorati: Google Gmail Error


profile image
Arun Gupta is a technology enthusiast, a passionate runner, author, and a community guy who works for Oracle Corp.

Java EE 7 Samples

Stay Connected


« June 2016