Tuesday Apr 24, 2007

GlassFish on Ubuntu with JDK 6

Couple of folks have asked us the reason GlassFish requires JDK 5 on Ubuntu - inspite of the fact that we bundle JDK 6 in Ubuntu. In this short blog, I will answer this question and list the steps to run GlassFish with JDK 6.

GlassFish is used to build the Java EE Reference Implementation. Java EE moves lockstep with JDK versions, for e.g: Java EE 5 with JDK 5, J2EE 1.4 with JDK 1.4 and so on. This was one of the biggest reason for us to require JDK 5. Having said that, the GlassFish works with JDK 6 as well.

Another reason, was that JDK 6 and GlassFish integrations were happening in parallel. Leaving us little time to effectively test with JDK 6. GlassFish with JDK 5 has gone through the entire SQE tests (about 15000 tests) and the Java EE Compatibility tests (some 17000 of those) - we just did not have the cycles to do that level of testing for JDK 6 before the release on Ubuntu.

Steps to run GlassFish on  JDK 6

The easiest way to change from JDK 5 to JDK 6 is to go to /usr/share/sunappserver/config/asenv.conf and change the AS_JAVA variable to point to JDK 6. This will change the JDK for all domains installed - which is the right way to do it IMO.

Another way to do this, is to run the following command:

sudo /usr/share/sunappserver/bin/asadmin set "server-config.java-config.java-home=path-to-jdk-6".

This changes the JDK per domain basis.

Upgrading from JDK 5 to JDK 6 should work seamlessly. There is a caveat while moving back from JDK 6 to JDK 5. If any code is generated with JDK 6 - you may run into compilation issues with JDK 5.  


Monday Apr 23, 2007

GlassFish @ Silicon Valley Web JUG: A Report

I mentioned in an earlier blog about GlassFish talk at Silicon Valley JUG. Members from the GlassFish team presented to the Silicon Valley Web Jug and Silicon Valley Jug on April 17th @ GooglePlex in Mountain View.  Mike Van Riper, Kevin Nilson hosted the event. It was a pleasure interacting with these gentlemen - their excitement for Java and the JUG was infectious.

The talk started about 10 minutes after 7PM and lasted about 10 minutes after 9PM. People very keen and interested with GlassFish offerings, even though we were pushing it to 9PM.



The talk started with me giving a whirlwind tour of GlassFish and the surrounding ecosystem. The idea was to introduce people to GlassFish, Java EE, applications running on top of GlassFish, projects delivering into GlassFish and projects GlassFish delivers into.

GlassFish Technologies for Developement 

In this section, we presented technologies that developers can use to develop applications. Ludo presented a couple of demos showing how easy it is to develop webservices, persistence, JSF and Ajax code with Netbeans and work seamlessly with GlassFish. The attendees really liked this demo.

Arun Gupta followed and presented our Web Services Interoperability Technologies. Questions ranged from what is WSIT and can you show us the numbers that say GlassFish performance is better than Axis 2?

 GlassFish Technologies for Deployment

Kedar presented clustering and web hosting solution provided by GlassFish. By this time, we were really short on time but the questions kept on coming. I was pleasantly surprised to see the interest level in this portion of the talk - seems attendees really care about clustering solutions.

Shreedhar then followed it up with Project Shoal. Shoal is used to deliver parts of our clustering solution. We had kept about 5 minutes for this session and we had to cut off questions at the 15 minute point :-).

GlassFish Futures

Ludo then wrapped it up with a quick overview of GlassFish V3 and whats to come.

Useful Information

  • People were pleasantly surprised to see that GlassFish offers solutions for developers, and deployers and to see that it is avaliable for production.
  • There was a question on whether there is support for GlassFish. Yes there is.
  • Photos on Arun's Blog.
  • JUG Meeting Notes.
  • You can find the presentation here
  • There were announcements made asking people to sign up for GlassFish @ CommunityOne day. This is the first day of JavaOne and entry is free.

Thursday Apr 19, 2007

GlassFish V1 in Ubuntu: Installation Steps, package information and Trivia

By now, you must have seen the tons of blogs about Java Stack in Ubuntu Feisty Fawn. It surely is a exciting day for me as I spent the last couple of months getting the GlassFish bits delivered into Ubuntu.
It has been a learning experience for me as I had never done any packaging work for any operating system (let alone Ubuntu).

The whole process started for us in late november at the Ubuntu Developer summit held in Mountain View. We were just exploring the packaging process at that particular time and work started in true earnest after the december break. We had to first make our GlassFish packaging module open source(packager-ext). This module was not open source - not because we did not want to, but we never got to it amongst other release commitments. Modifying our packaging structure to generate the bits for GlassFish turned out to be a lot more work than we anticipated.

Package Descriptions

We now deliver 4 packages called glassfish, glassfish-bin, imq and sunwderby into Ubuntu Multiverse

  • Glassfish package has pretty much all the glassfish packages.
  • Glassfish-bin has some binary (architecture dependent) components (for e.g. we need to have binary components to actually mask passwords entered on the screen - this functionality is not present in JDK 5 but is present in JDK 6).  Thus, the packages that you install work for i386 architecture today. Subsequent releases should work of JDK 6 and we will get rid of this binary package. Those who want to run on other architectures can still get the bits from the GlassFish home page.
  • Imq is Sun's Messaging Queue Product that GlassFish uses for messaging.
  • Sunwderby is a derby database package. We included this package as this is the derby release that GlassFish V1 had been tested end to end. 

 GlassFish depends on JDK 5 for installation. The reason was for this dependency was that GlassFish V1 has been fully tested and certified with JDK 5. We had released the V1 URI bits in November and these bits have been delivered into Feisty. Another reason for the delivery was  the extremely short release cycle and JDK 6 work was happening in parallel. This would have meant adding additional dependencies.

You can still go ahead and modify the configuration scripts to use this with JDK6.

Installation Instructions:

1. Make sure multiverse is a component declared in /etc/apt/sources.list

2. sudo apt-get install glassfish. Accept the license and glassfish, glassfish-bin, imq and sunwderby will be installed under /usr/share/sunappserver. Domains will be installed under /var/lib/sunappserver.

If you want to install domains under your home directory - there is a convenience script called /usr/bin/asadmin that will help you. It is recommended that you still use the /usr/share/sunappserver/bin/asadmin script to manage your installation.

Here is the snapshot of Synaptic package manager for GUI installation:

People Involved:

As with any release there are too many people to name who made this possible. Among the ones I can list are Anil Gaur, Abhijit Kumar who have supported and nurtured this from the beginning. Larry Freeman for writing some of the early packaging code, Prasad Subramanian for helping open source packager-ext module, Carla Carlson for program management, Ann Hillesland for documentation, Terena Chinn-Fujii for release management, Sathyan Catari, Sreeram and his group for testing. Tom Marble for his help in almost everything! Barton George, Ken Drachnik. Jeff Bailey, Daniel Holbach, Colin Watson and Etienne Goyer from Ubuntu.

Other Information

You can attend a Java One Talk about this on May 8th. Here is the session information

JavaOne Session

  • Session: TS 7361 Packaging Java Applications for Ubuntu
  • Speakers: Jeff Bailey (Ubuntu) and Harpreet Singh (Sun Microsystems)
  • Time: 3:20 PM, May 8th
  • Location: Esplanade 305, Moscone Center.

CommunityOne Day 

You can also attend the CommunityOne day for GlassFish on May 7th and hear about this. CommunityOne day is free and you can find registration information here.

Press Releases

Monday Apr 16, 2007

GlassFish Talk to Silicon Valley Web Jug and Silicon Valley JUG


There is a GlassFish talk on Apr 17th at GooglePlex in Mountain View. Myself, Ludovic Champenois, Arun GuptaShreedhar Ganapathy and Kedar Mhaswade from the GlassFish team will be presenting and demoing GlassFish v2 features. Hopefully, this is a small step towards a GlassFish Users group :-).

You can find more the details about the talk at the respective JUG pages.


Hope to see you there! Oh did I mention the event is free with free food.

You can also register for GlassFish day at JavaOne on May 7th. Learn and interact with GlassFish engineers at this event. Oh, did I mention that this event is free too.

Disclaimer: You can register for the event at the links below. You dont need to show up for the talk :-)


Talk Location

Google, Inc. (GooglePlex Map)

Tunis Conference Room, (Bldg. 43)

1600 Amphitheatre Parkway

Mountain View, CA 94043

Please enter from the north side of the building, in the middle of
the Google campus. Also, parking will be much easier to find in the
lots south of Bldg. 44 across the street from the main complex


Monday Mar 19, 2007

Chicago Marathon 2005 Pics

I had trained for Chicago Marathon 2 years back as part of raising funds for Team Asha. I am not a runner and the intention was to push myself outside my usual comfort zone. 

I was carrying a film camera and clicked a picture at every mile to document the run. As I said, I am not a runner and I needed proof for the bragging rights. Imagine my disappointment when I thought I had lost the camera on the way back home.

Recently I found the camera and got the pictures developed. Time has eaten away most of the pictures and I am left with 5 grainy ones.
The thing that stood out for me on that particular day was

  1. Chicago was freezing in October and we had to line up at the starting line at 6:00 am in shorts and everyone was shivering in the cold.
  2. The enormity of the crowd at the starting line was something I was unprepared for. It reminded of the VT station in Bombay, except everyone here was headed in the same direction. The air was pregnant with anticipation. Have a look at the starting line, the line starts at the buildings 
  3. Mile 2 picture is of a better quality. This is where my tendonitis injury showed up.

By mile 17, I was totally famished; my tendonitis had been hurting badly for 15 miles and everything was doom and gloom. This was the ideal place to see my family (parents and wife) , friends and a muffin. My parents had flown in from Kuala Lumpur to cheer me. Sebonti and Sudeepto who drove from Detroit to cheer me - I met them directly at mile 17 after 3 years - good reunion. My thoughts moved from doom and gloom to "its just 9 more miles lets wrap it up". I actually laughed out loud at that thought - this is what good training does to you. Here I was - somebody who had never run 500 metres before, six months after training I was telling myself to wrap it up - just 9 more miles to go. Thanks to the Asha coaches - Tony Fong and Rajeev Char and Rajeev Patel!


Another thing that stands out in memory was that mile 10 - I could hardly run as my tendonitis pain was getting bad to worse. I was feeling sorry for myself. At that moment, a man with no legs, prosthetics starting below the knees overtook me - I was humbled and told myself to shut the f up and keep running. He was inspiring!!! 

That was a good day - the sense of accomplishment was invigorating. I think,  I need to pick up running again.



Thursday Mar 08, 2007

A SunRay with Wifi and handwriting recognition used in schools!

I wrote my last blog from Hong Kong airport about 3 months ago. I had written about the great wifi network in the airport and wished that we had the same in our Santa Clara campus. Seems like my wish is going to be granted - I hear rumours that building 14 will have wifi connectivity pretty soon.

Seems like the blog God's are reading my blogs and granting my wishes. Time for another wish!

I will love Sun to produce a 11/15/17 inch SunRay client, with a wifi port built in. The monitor should have handwriting recognition and tons of free software. Why?

A) Education:
I would love to see a SunRay client replacing the traditional slates and books in class rooms. I envision  schools (especially in the third world countries) with pools of Sun Ray's per class. Students walk in to the classroom and pick one Sun Ray work with it during the day. The work gets stored in a server in the school - the handwriting recognition makes using the client just like a slate.

Am I being Negroponte'ish here? Maybe?  I must admit - I have been thinking about this before I heard about the 1 laptop per child project (for about 3 years now).

No keyboards, no mice - by keeping  a plain monitor, you have just made it a simple slate - something that any third world school kid will know about!

I think 1 laptop per child is a noble endeavour but an overkill. And till we get there, couple of hundred Sun Rays per school is something that I will be willing to settle with :-) 

Price is a factor - but I hear volume drives the price down ;-).

B) Connecting remote villages

Pools of sun rays shared by villagers with wifi poles spread around the village - now thats a thought. 1 Server sitting in the village school - that serves the villagers as well as students. 

C) Well then there is the business of replacing the hideous looking palm thingy that Fedex/UPS folks carry :-) 

 Lets see if the blog God's answer this one :-)


Thursday Dec 07, 2006

Morning from Hong Kong

The last time I passed through Hong Kong airport was 3 years ago on my way to India. Today I am passing that way again (wow 3 years since my last big travel - time flies). The airport is huge and I mean huge - had to travel from one end to the other :-(.

The sunrise coming up on the airport with the fog was beautiful - heck everything seems better after a 15 hour flight :-).

And the wifi - wow :-), it just worked no hassles and works from multiple spots from the airport. Now we need this speed and wifi spots in the Santa Clara campus. This seems more high-tech than the Sun office at Santa Clara :-).

 Posting a picture (taken from Photo Booth).Hong Kong Airport @ 6 AMblogs.sun.com/harpreet/resource/Photo%205.jpg" />

Friday Nov 10, 2006

Professional vs Passionate Software

I just read this kickass blog about Professional vs Passionate software/product.

I usually say "kickass" or "kewl" to describe products that I like instead of f\*\*king cool that the author prefers. Nevertheless, the author has nailed it - products do not capture  user's imagination if they are "professional". They need to be f\*\*king cool. For every iPod out there, there are a bunch of mp3 players that I cannot remember, let alone get off my butt to go to the store to buy it. MacBook Pro actually made my wife get out and buy it.

Project BlackBox seems to f\*\*king cool. This term of endearment ;-) has created a controversy for Tim Bray when he used f\*\*king cool to describe Project Blacbox. (Tim's blog describing his verbage :-) ). You know something is cool when people are talking about around the water cooler.

For a product to be f\*\*king cool - design matters period. A good design shows up in apple products (Apple Design Pro site) or something as simple as creating kickass presentation slides.

Here are some companies that I think have created or will create kickass products:

Apple, BMW, Amazon, Sony (with the walkman), Nintendo ( I bet -their new generation consoles that do not make me learn super hard combinations is going to kick xbox and ps3 ass).

 I will like to hear which companies and products that you liked...

Monday Nov 06, 2006

Enter the Java EE Contest to get a chance to win iPod Nano!

I am back with another one of those Java EE Contests. This time it is the iPod Nano. So what does one have to do to "get a chance to win an iPod Nano" as legal has repeatedly asked me to put it.

You need to fill in a survey that helps us identify your needs better. Fill in your rants, bugs, complaints and hopefully(!) some compliments and you will be entered to win the iPod Nano. Head over to the campaign home for more details.

You will also need the Java EE SDK, or an earlier J2EE SDK to participate.

The campaign was kicked off last week in conjunction with the new Java EE SDK . I have already seen some interesting comments. Sorry cannot release those :-) .

For those of you who might have wondered - I am not in marketing but am an engineer. I seem to have developed a reputation of being a "hobbyist marketeer" which leaves me amused. AFAIK, this gives me a license to come up with atrocious campaigns .


Friday Nov 03, 2006

GlassFish jumps from the Aquarium and swims in the Ubuntu pool!

I have been an Ubuntu fan (see earlier post) and am pleased to state that GlassFish swims in Ubuntu :-). Rich Sharples has a blog with screen shots that describe how to install GlassFish on Ubuntu. (This seems to be old news :-))


We wanted to try out the latest release GlassFish V1 UR1 in Ubuntu. We picked up the latest promoted build (build 14) and installed it in Ubuntu. Our SQE team (specifically Jagadesh ) ran our entire set Basic Acceptance Tests (BAT) of SQE tests and came back with a report that 98.92% of the SQE tests have run without any issues. There are some workarounds needed to make it work though.

Here are the steps as outlined by Jagadesh. Give it a spin...


  1. Download GlassFish V1 UR1.
  2.  Follow steps oulined in the download page. Captured here for convenience:
    1. GlasssFish installation requires JDK 5.
      java -Xmx256m -jar filename.jar
      cd glassfish
      ant -f setup.xml
  3. $glassfish_home/bin/asadmin start-domain domain1. Thats it you are done.


    Known Issues:

    • OutOfMemory Exception : PermGen Space during the application runtime at server side. The exception will be in the server.log.
      • Solution: Set the following JVM option in the domain.xml and restart the server.
        • <jvm-options>-XX:MaxPermSize=128m</jvm-options>
        • Alternatively, you can set it through the Admin GUI 
          • Login to admin console .  And follow the steps:
            • Click Application Server (left frame) --> Click on JVM Settings Tab --> Click on JVM Options Tab --> Add JVM Option --> Cut and paste "-XX:MaxPermSize=128m"  --> Save

    • Passwords are echoed on the screen during the application server domain creation.
      • Currently there is no workaround for it.


    If you like to try out the Java EE SDK for a different platform you can find it here.


Thursday Nov 02, 2006

Blogging with Flock

I just downloaded a new "social" browser called Flock. Social browser is a new term to me. I was just intrigued to see what are the things it offers to the other browsers I run (Firefox, Opera, Camino, Safari).

Flock does seem to have some value add. I liked the drag and drop post images to Flickr feature. There seems to be a automatic post to delicious feature with tags as well.

This blog is written with an inbuilt blogger client. If all goes well it should post 2 blog accounts that I have.

In the world of browsers where most browsers have the same set of features, Flock seems to have paid attention to the new Web 2.0ish requirements and addresses them. It stands out from the rest.

technorati tags:, ,

Monday Sep 11, 2006

OpenLaszlo on GlassFish and Sun Java Application Server 9.0

OpenLaszlo is a platform to create rich internet applications (read AJAX applications).

I configured OpenLaszlo to deploy and run on GlassFish/SJSAS9.0. I created a simple webservice through Netbeans and deployed on GlassFish/SJSAS9.0. I followed it up with an OpenLaszlo rich client to invoke the webservice using XML-RPC. The application mimics "Test" web service button in the GlassFish/SJSAS9.0 admin ui page. This was a simple proof of concept to test OpenLaszlo on GlassFish/SJSAS9.0.

Head over to GlassFish Wiki if you want to learn how to configure OpenLaszlo on GlassFish and see a snapshot of my client application.

Steps to Setup and Snapshots...

Thursday Aug 03, 2006

Blogging CEO's - Soft CEOs.

Examining soft power that blogging CEO's exert. Is being soft good?

[Read More]

Wednesday Aug 02, 2006

Ubuntu Rocks!

Ubuntu - the easiest distribution ever! [Read More]

Thursday Apr 20, 2006

GlassFish on Intel-Mac

I have recently moved into the Mac world. I got myself the new MacBook Pro (Mac-Intel laptop). I have been always using Solaris 10 (and previously Linux) to do my development of Glassfish and Sun Java Application Server. My first step into the mac world was to see if we could install GlassFish and SJSAS 9.0 (to be released sometime soon) and run it on Intel Macs.

The results have been good. Here are the steps to install GlassFish on Intel-Mac.

  • Go to GlassFish Download page, download the latest promoted bits. https://glassfish.dev.java.net/public/downloadsindex.html
  • Follow the instructions given on the linked page. https://glassfish.dev.java.net/downloads/14Apr06.html. The server starts up without any problems. I deployed the sample war that comes with Sun Java Application Server 9.0 installation bits (I have used the internal promoted bits of the release that will be out soon).

    Recently Jerome Dochez had written a blog about changes he had to make in GlassFish builds to use the new universal binaries to support the jni libraries used to not echo the password. I am glad that thats done and I could use GlassFish without any issues.

    Essentially there are no changes and nothing special required to run GlassFish on the Intel-Mac. Thats pretty cool!!

  • About



    « August 2016