Miles to go …

January 20, 2009

Fish pedicure by Doctor Fish

Filed under: General — arungupta @ 7:00 pm

Doctor Fish (aka “Garra rufa”, Kangal fish, Nibble fish) is a freshwater fish fish that originates from Turkey, Syria, Iraq, and Iran. They consume the dead and affected areas of your skin and also help in curing skin diseases and disorders. Now attending Singapore Tech Days 2009, some of us got “fish pedicure” done outside the Singapore Night Safari park.

Here are couple of pictures:

And then a video of us getting fish therapy:


Don’t worry, its not creepy! Instead it’s more ticklish and I can still feel that sensation, even 12 hours later :)

And here is another one:

Thanks Maria for the video!

In these economic times, if you are suffering by the expensive, commercial, and properietary vendor offerings of Application Server – let GlassFish and other open source offerings from Sun cure you :)

Here is the complete photo album in Singapore so far:

Follow the latest updates on twitter.com/arungupta.

Technorati: conf suntechdays singapore fish drfish glassfish

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

Sun Tech Days 2009, Singapore – Welcome Reception

Filed under: General — arungupta @ 1:27 pm

Follow up from Part 1.

Attended “What Developers should care about MySQL ?” by Colin and “Groovy and Grails” by Chuk-munn Lee.

I enjoyed both the talks for different reasons. Colin’s talk explained the pluggable storage engine architecture that is unique to MySQL (pronounced my-ess-kew-ell, not my-sequel). It was interesting to know that the different storage engines can be picked a la carte based upon the requirements. The performance comparison for INSERTs was 5x between MyISAM, InnoDB and Archive storage engines. But then InnoDB provide transactions and other goodies. Multiple performance tuning tips such as using negative unsigned int instead of BIGINT and partitioning databases if the number of records grow more than 1 billion were good! Keep an eye on his blog for slides.

Chuk’s talk introduced Groovy, Grails, showed several samples of NetBeans and Grails integration. A Grails application can be deployed as a WAR file on GlassFish. Alternatively you can download the Grails module from GlassFish v3 Update Center and use the standard “run-app” command to run your Grails application using the embedded GlassFish v3 instead of Jetty. This is explained nicely in the screencast below:


Here are couple of pictures from rest of the day:

The welcome reception gave a good chance to engage with the audience. There was a community-driven musical performance and I made a video recording of the event. But because of the slow Internet connection, it’s taking forever to load this particular video (may be it’s Picasa 3 on Mac ;-)

If you have not signed up for Cloud Camp event happening in Singapore at 6pm today, register here!

Here is the complete photo album so far:

Follow the latest updates on twitter.com/arungupta.

Technorati: conf suntechdays singapore glassfish mysql netbeans

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

Sun Tech Days 2009, Singapore – Day 1

Filed under: General — arungupta @ 12:29 am

The Sun Tech Days Singapore started earlier this morning – over 1100 developers, an outstanding audience!!!

The kick off had a good local flare when the Gods of Longevity, Fortune, and Prosperity (Fu Lu Shou) showed up to start the event ;-) The build up to their appearance was really exciting as evident from the video below:


This particular event will also be recorded in Singapore Book of Records for the largest numbers of Sun developers playing a rattle together :) Here are some pictures from the event:

A Toshiba laptop and an iPod was raffled to the audience and the lucky winners are:

And found another loyal reader of my blog:

Gosh, he even took my autograph ;-)

The steps to reproduce the different GlassFish demos shown during the key note are explained below.

  1. GlassFish v3 OSGi-compliance and quick startup time

    Download GlassFish v3 Prelude from here, unzip, and start the server as

    glassfish/bin/asadmin start-domain –verbose

    to see a message something like:

    INFO: GlassFish v3 Prelude startup time : Felix(1732ms) startup services(1091ms) total(2823ms)

    The GlassFish v3 container starts up fairly quickly, 2.8 secs in this case, without starting any application-specific container. The container is using OSGi R4 APIs and Apache Felix as the runtime. This allows any standard OSGi bundle to be easily deployed in GlassFish v3. The underlying OSGi runtime can be easily replaced with Knopflerfish or Equinox because standard R4 APIs are used. As you notice, Felix start up time is explicitly shown in the startup message.

    The quick start up is possible because containers, such as Web container that serves web applications, is started only when the first Web application is deployed. No web application, no web container – simple! The same is true as other types of applications are deployed, for example a Rails application. The containers are started and stopped on demand giving a higher utilization of resources.

  2. Auto-deploy of Servlets and preserving servlet session state across multiple re-deploys using NetBeans and Eclipse. This feature is really useful as it tremendously reduces your development time. Focus on what you are good at i.e. adding business logic and let NetBeans and GlassFish together take care of your deployment worries. And why should you loose your session state just because the application is re-deployed!
  3. Modularity and Extensibility of GlassFish v3 by running/debugging a Rails application. GlassFish certainly supports traditional Java EE applications. But starting with GlassFish v3 the newer Web frameworks like Rails can also be deployed natively. The screencast #26 shows how to develop, run and debug a Rails application natively deployed on GlassFish. And this capability of deploying a Rails application is added as an OSGi module and also demonstrates the extensibility of GlassFish.

    It provides future protection as well because any other Web framework can be easily deployed as a standard OSGi module.

  4. Extensibility of GlassFish v3 by dropping a JAR in the “/modules” directory. The admin console is a one-stop interface for the administration of your GlassFish instance such as deploying WAR/EAR, creating JDBC/JMS resource, and creating clusters. Starting with GlassFish v3, even the admin console is extensible. There are clearly defined extension points that allows you to write a “admin console module” and extend the capability of your admin console. The demo showed dropping a JAR in the standard “modules” directory and admin cosole recognizing the module. A sample project that shows all the integration points to GlassFish v3 Admin Console is available here.

Other demos showcased JavaFX, Open Solaris and jMaki Webtop technology. I particularly enjoyed the JavaFX demo by our “resident mad scientist” – Simon Ritter :) It was an interesting use of technology to create something fun. Enjoy the demo below:

Also met Colin Charles, Community
Relations Manager for MySQL at Sun Microsystems. It was certainly great to know that similar thought process is applied for promoting both GlassFish and MySQL – state the facts, offer an alternative, and let the customers decide. Both MySQL and GlassFish are open source offerings with complete enterprise support available from Sun Microsystems. And together with OpenSolaris, NetBeans and many other open source offerings they make a killer platform for developing/deploying any kind of web applications.

And if you have not signed up for Cloud Camp event happening in Singapore tomorrow at 6pm, register here!

Here is the complete photo album so far:

Follow the latest updates on twitter.com/arungupta.

Technorati: conf suntechdays singapore glassfish mysql javafx netbeans

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 19, 2009

EJBs in a WAR – Simplified packaging defined by EJB 3.1, Available in GlassFish v3

Filed under: General — arungupta @ 5:00 am

The EJB 3.1 specification says:

An enterprise bean class with a component-defining annotation defines an enterprise bean component when packaged within the WEB-INF/classes directory or in a .jar file within WEB-INF/lib.

In simple English it means, an EJB can be a POJO annotated with EJB annotations (such as @javax.ejb.Stateless) and bundled within WEB-INF/classes inside a WAR.

This feature is available in GlassFish v3 for some time now.

Imagine the ramifications, you now have Container Managed Persistence, Transacations, Security, and all other standard benefits of EJB – only this time in a WAR file.

The default configuration of GlassFish v3 Prelude does not include an EJB container. Lets first install it!

The EJB container in GlassFish v3 Prelude can be installed in couple of ways:

  • Using Update Center as described here.
  • Or using the “pkg” command which is described below

The “pkg” command shipped with GlassFish is platform-independent and runs on all the supported platforms. You can use the standard “pkg-get” command with OpenSolaris but that requires more options to be specified. For simplicity, we’ll use the “pkg” command bundled with GlassFish as shown below:

arun@opensolaris:~/glassfishv3-prelude/bin$ ./pkg

The software needed for this command (pkg) is not installed.

When this tool interacts with package repositories, some system information
such as your system’s IP address and operating system type and version
is sent to the repository server. For more information please see:

http://wiki.updatecenter.java.net/Wiki.jsp?page=UsageMetricsUC2

Once installation is complete you may re-run this command.

Would you like to install this software now (y/n): y

Install image: /export/home/arun/glassfishv3-prelude/bin/..
Installing pkg packages.
Installing: [pkg:/pkg@1.0.7,0-15.1269:20081008T211255Z,
pkg:/python2.4-minimal@2.4.4.0,0-15.1269:20081008T211307Z]
Initialization complete.

Software successfully installed. You may now re-run this command (pkg).

Install the EJB container as:

arun@opensolaris:~/glassfishv3-prelude/bin$ ./pkg install glassfish-ejb
DOWNLOAD                                    PKGS       FILES     XFER (MB)Completed                                    1/1       11/11     0.45/0.45
PHASE                                        ACTIONSInstall Phase                                  24/24

And verify as …

arun@opensolaris:~/glassfishv3-prelude/bin$ ./pkg list
NAME (AUTHORITY)                              VERSION         STATE      UFIXfelix                                         1.2.2-0         installed  ----glassfish-amx                                 3.0-28.3        installed  ----glassfish-api                                 3.0-28.3        installed  ----glassfish-common                              3.0-28.3        installed  ----glassfish-ejb                                 3.0-28.3        installed  ----glassfish-grizzly                             1.8.6.2-0       installed  ----glassfish-gui                                 3.0-28.3        installed  ----glassfish-hk2                                 3.0-28.3        installed  ----glassfish-jca                                 3.0-28.3        installed  ----glassfish-jdbc                                3.0-28.3        installed  ----glassfish-jdbc-gui                            3.0-28.3        installed  ----glassfish-jdbc-management                     3.0-28.3        installed  ----glassfish-jpa                     
            3.0-28.3        installed  ----glassfish-jsf                                 1.2.10-1        installed  u---glassfish-jta                                 3.0-28.3        installed  ----glassfish-management                          3.0-28.3        installed  ----glassfish-nucleus                             3.0-28.3        installed  ----glassfish-registration                        3.0-28.3        installed  ----glassfish-scripting                           3.0-28.3        installed  ----glassfish-web                                 3.0-28.3        installed  ----glassfish-web-gui                             3.0-28.3        installed  ----glassfish-web-management                      3.0-28.3        installed  ----javadb                                        10.2.2.1-0      installed  ----pkg                                           1.0.7-15.1269   installed  ----pkg-java                                      1.0.7-15.1269   installed  ----python2.4-minimal                             2.4.4.0-15.1269 installed  ----

As shown above, “glassfish-ejb” module with version “3.0.28.3″ is now installed.

Now your GlassFish v3 Prelude is ready to serve EJBs!

Next, lets create a simple web application and package EJB there. Using the NetBeans IDE, create a template Web application. Lets say the project is named “ReallySimpleEJB”.

  1. Create a POJO, choose the class name as “HelloEJB” and package as “server” as shown

  2. Declare a public method “sayHello” and add @javax.ejb.Stateless annotation to mark it a stateless EJB as shown

  3. Create a new Servlet by selecting the option as shown

    and specify the name as “EJBClient” in “client” package

    and click on “Finish”.

  4. In the generated Servlet, declare a dependency on the EJB using @javax.ejb.EJB as shown

  5. Invoke the EJB by uncommenting the code in “processRequest” method and add “ejbClient.sayHell(“Duke”)” invocation as shown:

If the application is pre-deployed then saving this file will auto-deploy it as shown in screencast #27. Otherwise right-click on the project and select “Deploy”.

And finally invoking the servlet at “http://localhost:8080/ReallySimpleEJB/EJBClient” shows the following output:

EJBs in a WAR – simple and easy to use :)

Download GlassFish v3 Prelude and get started!

Technorati: glassfish v3 ejb netbeans war ear

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 18, 2009

OSUM – Open Source University Meetup – awesome venue for students!

Filed under: General — arungupta @ 10:45 am

If your university is not participating in the Sun Campus Ambassador program, you can always create an Open Source University Meetup (OSUM, pronounced “awesome”) community. Sun Microsystems offers you the complete range of Open Source software – OpenSolaris, OpenOffice, NetBeans, GlassFish, MySQL, and many others.

OSUM provides an opportunity to create a student club and:

    * LEARN about Open Source Technologies and how they are opening up new career opportunities for students
    * ACCESS free online web courses, webinars, tutorials and other resources to prepare for career enhancing certifications
    * SHARE your technical knowledge with other students around the world virtually and on campus
    * COLLABORATE with a global community of students via forum, campus events, webinars, etc.
    * CONNECT and make friends with students around the world who are committed to Open Source just like you!

Create your OSUM today and join over 900 student clubs from over 80 countries!

If you are interested in talking about GlassFish, spotlight.dev.java.net/start provides a comprehensive set of slides (with speaker notes), demos, screencasts, training materials and other resources to get you started!

Technorati: glassfish students spotlight osum campusambassador

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 17, 2009

TOTD #66: GlassFish Eclipse Plugin 1.0.16 – Install v3 Prelude from the IDE

Filed under: General — arungupta @ 5:00 am

GlassFish Plugins team released ver 1.0.16 of Eclipse plugin for GlassFish. The team has maintained pretty good cadence in terms of adding features and fixing bugs in the plugin (16 releases in approx as many months). However this particular version has an exciting feature. It allows GlassFish v3 Prelude to be installed from within the IDE itself.

If you have not installed GlassFish plugin in your Eclipse earlier then screencast #28 shows how to get started. However the screencast requires you to pre-install GlassFish outside the IDE. Instead, as explained in this blog, you can skip to here and install the Application Server from within the IDE.

If you have a previous installation of GlassFish plugin, then it needs to be updated using the steps described below. And finally install the Application Server from wtihin the IDE.

Lets get started!

In Eclipse, go to “Help” menu item, “Software Updates …” and it shows the complete list of plugins installed along with their versions …

GlassFish plugin version is 1.0.14 in this case. Click on “Available Software” tab to show all the available updates as shown below:

The GlassFish plugin update site is automatically added to the list of managed sites once you install the plugin, but it is not automatically checked as active. The issue #45 provide more details but in the mean while check the website explicitly by clicking on “Manage Sites …” and selecting “https://ajax.dev.java.net/eclipse” as shown below …

Click on “OK” and the list of “Available Software” is now updated to include GlassFish server. Notice, the latest version (1.0.16 in this case) is shown as well.

Select the plugin to be installed …

Click on “Install …”

Click on “Next >” and then “Finish”. Now your Eclipse is updated with the latest GlassFish plugin.

Lets add a new Server instance. In the “Servers” tab, right-click and select “New”, “Server” …

Select “GlassFish v3 Prelude” after expanding the “GlassFish” tree …

Name the server if you like or take default and click on “Next”.

Notice “Install Server” button, this is the new functionality added in version 1.0.16 of the plugin. Specify a directory name and click on “Install Server”. This will automatically download the GlassFish v3 Prelude server and install in the specified directory.

Of course, you need to accept the License …

Click on “Finish” and GlassFish is downloaded and installed for you (finished in few seconds for me :) and shows the following window:

Clicking on “Next >” walks you through the standard GlassFish configuration options:

More details on how to leverage the powerful GlassFish server are available in the documentation. The screencast #28 shows some of the GlassFish/Eclipse integration features in an easy to use manner.

Please ask any questions or send any feedback to users@glassfishplugins.dev.java.net.

Please leave suggestions on other TOTD (Tip Of The Day) that you’d like to see. A complete archive of all tips is available here.

Technorati: totd glassfish eclipse v3

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 16, 2009

GlassFish Swimming to Singapore Tech Days

Filed under: General — arungupta @ 5:00 am

Sun Tech Days is traveling to Singapore next week and I’ll be there!

You’ll find me at the pavilion hall, sessions, hallway, lunch, reception, University Day, and else where. Stop by and say hello! Let us know how you are using GlassFish and how can we make it better for you.

Click on the map below to get the exact direction to Raffles City Convention Centre.

Raffles City Convention Center

Here are some important links:

Register now!

Complete details about the event are available here.

There are scattered thunderstorms predicted through out the event. The highest temperature is expected to be 89o and the lowest 76o. This is going to be really balmy compared to an average 55o in San Francisco Bay Area around this time of the year. But hey, it’s been 10o warmer here too for past few days, so shouldn’t be too bad :)

There is apparently a running track near by and I’d not like to break my 16 days of run-a-day streak. Any other recommendations for good running trails around the convention center ?

What are other fun things to do ?

Any Ruby Meetups who would like to know why GlassFish/NetBeans provide an excellent alternative to WEBrick/Mongrel/Textmate ?

Technorati: conf suntechdays singapore glassfish

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 15, 2009

GlassFish spotted on Salvador, Bahia – a Brazilian beach!

Filed under: General — arungupta @ 11:45 pm

Marcelo Souza (a GlassFish team member) spotted GlassFish on Salvador, Bahia beach in Brazil during his personal vacation :)

Thanks to Marcelo for taking this picture :)

Here are couple of shots of the beach itself:

Drop a comment on this blog if you would like to share any pictures of GlassFish :)

Technorati: glassfish brazil salvadaor

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

GlassFish @ Manipal Institute of Technology, India – Go Campus Ambassadors!

Filed under: General — arungupta @ 5:00 am

Here is yet another (slightly dated) contribution by Vasudha Amrit on GlassFish, Campus Ambassador from Manipal Institue of Technology, India.

She arranged a GlassFish talk in her campus and one of the GlassFish team member delivered the talk (while on a personal visit :) ! The blog report provide details. The event was a huge success with 482 attendees. Here is an excerpt from the blog:

we had to put up extra chairs all around the place and even then people kept coming, so much so that we had to send people back. Some people even volunteered to sit on the floor. There were a total of 482 students, HODs and faculties from four departments and the associate director ( phew!!!!! :P )attending the talk when we did a head count and that is not counting people who had gone back.

And some pictures (more in the original blog):

Thank you very much Vasudha for providing an opportunity to share the details about best open source application server! Thank you Sudhir for delivering the talk while on a personal visit!

Please drop a comment on this blog if you have talked about GlassFish in your school/university/training. If you’d like to talk about it then spotlight.dev.java.net/start provides a comprehensive list of material (slides, demos, etc.) to get you started!

Check out how widespread CAs are in this global map. Follow their aggregated blogs for details on what they are doing.

And occassionally we conduct contests for students where prize money is awarded for the best entries.

Technorati: glassfish students spotlight campusambassador

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot

January 14, 2009

Blog Fan

Filed under: General — arungupta @ 11:46 am

It is embarrassing to share the post below but certainly very encouraging to know that readers like the posts on my two blogs (weblogs.java.net/weblogs/java.net and blogs.sun.com/arungupta).

I’ve thoroughly enjoyed 544 posts on weblogs.java.net and 762 posts on blogs.sun.com so far :)

Thanks for the continued readership and feel free to send suggestions by leaving a comment on the blog!

Technorati: blogs java.net bsc milestogo

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • StumbleUpon
  • Technorati
  • Twitter
  • Slashdot
« Newer PostsOlder Posts »

The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.
Powered by WordPress