Miles to go …

November 12, 2008

LOTD #13: Warbling with RMagick on GlassFish

Filed under: web2.0 — arungupta @ 5:30 am

GlassFish with RMagick explains the Warbler configuration required for using RMagick with GlassFish.

Did you know Rails application can be natively deployed on GlassFish v3 Prelude ? And you can even buy production support!

All previous entries in this series are archived at LOTD.

Technorati: lotd rubyonrails rmagick glassfish

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

November 11, 2008

GlassFish @ Java MUG tomorrow (Nov 12, 2008)

Filed under: General — arungupta @ 5:00 am


I’ll be presenting on GlassFish @ Java MUG tomorrow.

This is a highly opportune moment since GlassFish v3 Prelude was released last week. I plan to talk about GlassFish community, deliverables (including v2 and v3), NetBeans/Eclipse integration, the surrounding ecosystem, future directions and anything related that you are interested in :)

The coordinates are:

Nov 12, 2008, 6:30pm
Sun’s North Dallas Office

See you there!

I’m staying at Embassay Suites on Noel Road. Anybody aware of near by running trails ? Or interested in running together ?

Technorati: conf glassfish jug javamug dallas

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

November 10, 2008

GlassFish @ Silicon Valley Code Camp 2008 – Trip Report

Filed under: web2.0 — arungupta @ 11:30 pm
CodeCamp at FootHill College. Click Here for Details and Registration 1400 registrations, 112 sessions, free pizza, a barbecue on Saturday night, raffles and lot more – that is Silicon Valley Code Camp.

Jitu, Jiandong, Jacob, and I presented on GlassFish at Silicon Valley Code Camp over the weekend. The event had higher attendance (close to 500) than last year and certainly is a great networking event for the local community.

The venue at Foothill College is literally in foot of the hills and the campus is beautiful. The barebecue reception in the evening was certainly a pleasant relief to the attendees who did not get a pizza slice at lunch ;-)

If you could not attend any of our sessions hen you can read through the slides for GlassFish: The Best Open Source Application Server and Rails powered by GlassFish. The demos shown in the talk are available at:

Feel free to send any comments to users@glassfish.dev.java.net.

Check out some pictures:

And the complete album at:

Technorati: conf siliconvalleycodecamp glassfish netbeans rubyonrails metro webservices

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

Screencast #27: Simple Web Application using NetBeans 6.5 IDE and GlassFish v3 Prelude

Filed under: General — arungupta @ 5:00 am

GlassFish v3 Prelude is now available!

It contains a Java EE 5-based Web stack. A comprehensive tooling by NetBeans IDE allows to easily develop Web applications and deploy directly on GlassFish v Prelude. Rapid deployment feature of GlassFish allows to redeploy applications without losing session state. Using the deploy-on-save feature of NetBeans the complete development cycle is reduced to edit-save-refresh. There is no longer a need to wait for explicit deployment any more, cool isn’t it ?

And you can even purchase enterprise support as well!

This screencast shows how you can create a simple Web application using JSP and Servlets in NetBeans IDE, deploy it directly on GlassFish v3 and then debug it.


Are you still doing the conventional edit-save-deploy-refresh conventional development cycle ? Use NetBeans and GlassFish together to liberate yourself :)

File GlassFish related bugs here using “web_container” sub-component. File NetBeans related bug here using “glassfish_v3″ sub-component. Ask your GlassFish related questions on webtier@glassfish.dev.java.net or NetBeans related questions on nbusers@netbeans.org.

All other GlassFish related screencasts are available here.

Technorati: glassfish v3 netbeans jsp servlets deployonsave deployment screencast

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

November 7, 2008

Screencast #26: Develop/Run/Debug Rails application using NetBeans IDE and GlassFish v3 Prelude

Filed under: web2.0 — arungupta @ 5:00 am

GlassFish v3 Prelude is now available. It allows Rails applications to be deployed natively using JRuby and without the need of any WAR packaging or Servlet container. An integrated NetBeans tooling provides a comprehensive development and deployment platform for all your Rails applications. And you can even purchase enterprise support as well!

This screencast shows how you can create a simple Rails application using NetBeans IDE, deploy it directly on GlassFish v3 and then debug it.


Typo, Redmine, Substruct, and Mephisto are some of the applications I’ve tried deploying on GlassFish. Have you tried deploying your Rails app on GlassFish ?

File Rails/GlassFish related bugs here using “jruby” sub-component and ask your questions on webtier@glassfish.dev.java.net.

All other GlassFish related screencasts are available here.

Technorati: glassfish v3 netbeans rubyonrails jruby screencast

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

November 6, 2008

GlassFish v3 Prelude – now available!

Filed under: General — arungupta @ 6:15 am


GlassFish v3 Prelude
is a modular and lightweight Web 2.0 development and deployment platform. It has been brewing for the past few months and is now finally available – download here! Read the official Press Release for more details.

Use it for deploying your enterprise applications today and purchase production support for the GlassFish Enterprise Server v3 prelude.

Simply unzip the bundle and start the Application Server as shown below (including startup log):

~/tools/glassfish/v3/glassfishv3-prelude/glassfish >bin/asadmin start-domain –verbose
Nov 4, 2008 2:39:07 PM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: JVM invocation command line:
/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home/bin/java
-cp
/Users/arungupta/tools/glassfish/v3/glassfishv3-prelude/glassfish/modules/glassfish.jar

. . .

Nov 4, 2008 2:39:08 PM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: Successfully launched in 12 msec.
Cannot run Java in 32 bit mode. Continuing in 64 bit mode.
Nov 4, 2008 2:39:08 PM com.sun.enterprise.glassfish.bootstrap.ASMain main
INFO: Launching GlassFish on Apache Felix OSGi platform

Welcome to Felix.
=================

Nov 4, 2008 2:39:11 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.common.glassfish-mbeanserver [9]
Nov 4, 2008 2:39:11 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.core.kernel [79]
Nov 4, 2008 2:39:11 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.common.common-util [59]
Nov 4, 2008 2:39:11 PM OSGiModuleImpl start

. . .

INFO: Started bundle org.glassfish.flashlight.flashlight-framework [72]
Nov 4, 2008 2:39:13 PM com.sun.enterprise.v3.services.impl.GrizzlyProxy start
INFO: Listening on port 8080
Nov 4, 2008 2:39:13 PM com.sun.enterprise.v3.services.impl.GrizzlyService postConstruct
INFO: Network listener http-listener-2 on port 8181 disabled per domain.xml
Nov 4, 2008 2:39:13 PM com.sun.enterprise.v3.services.impl.GrizzlyProxy start
INFO: Listening on port 4848
Nov 4, 2008 2:39:13 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.common.container-common [83]
Nov 4, 2008 2:39:13 PM com.sun.enterprise.v3.admin.adapter.AdminConsoleAdapter setStateMsg
INFO: The Admin Console Web Application has been downloaded.
Nov 4, 2008 2:39:13 PM com.sun.enterprise.v3.server.AppServerStartup run
INFO: GlassFish v3 Prelude startup time : Felix(2910ms) startup services(1902ms) total(4812ms)
Nov 4, 2008 2:39:13 PM com.sun.enterprise.registration.glassfish.PingService$1 run
INFO: Total number of available updates : 1
Nov 4, 2008 2:39:13 PM com.sun.enterprise.registration.glassfish.PingService$1 run
INFO: Available updates :

glassfish-jsf 2.0.0,0-3:20081017T093242Z Fri Oct 17 09:32:42 PDT 2008
Nov 4, 2008 2:39:14 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.common.glassfish-naming [65]
Nov 4, 2008 2:39:14 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.common.glassfish-api [84]
Nov 4, 2008 2:39:14 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.connectors.connectors-runtime [27]
Nov 4, 2008 2:39:14 PM OSGiModuleImpl start
INFO: Started bundle org.glassfish.transaction.jta [7]
Nov 4, 2008 2:39:14 PM org.glassfish.admin.mbeanserver.ConnectorStartupService$ConnectorsStarterThread startConnector
INFO: Started JMXConnector, JMXService URL = service:jmx:rmi:///jndi/rmi://dhcp-usca14-132-225.SFBay.Sun.COM:8686/jmxrmi

The first start takes some time because it creates Felix configuration files but subsequent starts are relatively quicker as shown below:

Nov 4, 2008 2:48:01 PM com.sun.enterprise.v3.server.AppServerStartup run
INFO: GlassFish v3 Prelude startup time : Felix(1703ms) startup services(1463ms) total(3166ms)

And another start …

Nov 4, 2008 2:48:31 PM com.sun.enterprise.v3.server.AppServerStartup run
INFO: GlassFish v3 Prelude startup time : Felix(1630ms) startup services(1302ms) total(2932ms)

And another one …

Nov 4, 2008 2:48:45 PM com.sun.enterprise.v3.server.AppServerStartup run
INFO: GlassFish v3 Prelude startup time : Felix(1586ms) startup services(1227ms) total(2813ms)

What excites me about GlassFish v3 ?

  • Modularity using OSGi: OSGi provides complete modularity in the kernel of Application Server. It completely shatters the “one size fits all” philosophy. Basically you pay in terms of memory, resource utilization, learning and everything only for the components you care about. And as your need expands, you can download OSGi modules for technologies from the Update Center. TOTD #36 shows how a standard OSGi bundle can be easily deployed on GlassFish.
  • Retain session data across HTTP deploys: 1.Imagine debugging a Servlet that manipulates session data. By enabling a property during redeploy any active sessions of the application that is being redeployed will be serialized and saved in memory, and restored once the redeployment has completed. Read more details here.
  • Embeddability allows to run the GlassFish inside a VM – no explicit need to download/install/configure an Application Server. Read more details here and enjoy a live sample.
  • Dynamic Languages and Frameworks like Ruby-on-Rails and Groovy/Grails are gaining popularity. These dynamic languages and frameworks are first-class citizens in GlassFish. And integrated tooling (develop/deploy/debug) cycle makes it all the more attractive. Read more details here and numerous samples.
  • Faster startup time – Application server startup in 2-3 seconds, need we say more. Think about about the productivity boost!
  • Integrated Tooling – NetBeans 6.5 & Eclipse 3.4 provides comprehensive tooling options. By using deploy-on-save technology, Servlets and JSPs are automatically compiled and deployed. This functionality shortens a developer’s iterative development experience to edit-save-refresh browser. Screencast #24 shows how to get started with NetBeans (an updated one coming soon). Read more details about Eclipse 3.4 here. Detailed screencasts coming for both the IDEs soon.
  • First flavor of Java EE 6 – First access to some of the Java EE 6 spec implementations are available through the bundled Update Center. JAX-RS 1.0, JSF 2.0, EJB 3.1 to begin with and more will be pushed as we make progress.

What do you find exciting in GlassFish v3 ?

There are many other cool features which you’ll hear/watch in the upcoming days on this blog. Here are some of the screencasts I plan to release (in no particular order) over next few days:

  • Getting Started with GlassFish v3 Prelude using NetBeans 6.5 and Eclipse 3.4
  • Web Application develop/deploy/debug session using NetBeans 6.5 and Eclipse 3.4
  • Create/Run/Debug Rails application on GlassFish v3 using NetBeans 6.5
  • Retain Session data across HTTP deploys using NetBeans 6.5 and Eclipse 3.4
  • Creating an OSGi bundle and deploying on GlassFish v3 Prelude

Let me know if you have any particular preference.

Technorati: glassfish v3 prelude javaee netbeans eclipse

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

November 5, 2008

LOTD #12: Technorati State of the Blogosphere 2008

Filed under: General — arungupta @ 5:00 am

Technorati.com released State of the Blogosphere 2008. Here are some results from the report:

All previous entries in this series are archived at LOTD.

Technorati: lotd blogosphere technorati 2008

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

November 4, 2008

I Voted!

Filed under: General — arungupta @ 9:58 am

I voted this morning, did you ?

The entire process was quite seamless. A house couple of blocks away was set up as the polling station. There was no queue around 8:45am this morning and everything took less than 10 minutes (including taking pictures ;) .

Google Fight is not able to predict the winner:

Some other trends:

Watch similar trends from Aug 4, 2008.

Dont forget voting stations close @ 8pm tonight!

Check out flickr photostream from fellow voters.

Technorati: elections 2008 vote

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

Getting Started with Edge Rails (2.2) using JRuby and GlassFish

Filed under: web2.0 — arungupta @ 4:00 am

This blog shows how to get started with Edge Rails (2.2, almost there) using JRuby. The blog uses JRuby 1.1.5 and GlassFish v3 Prelude b28c to deploy a simple Rails app.

  1. Download and unzip JRuby 1.1.5.
  2. JRuby 1.1.5 comes with “rake 0.8.3″. However if you are using JRuby 1.1.4, then you need to update “rake” version to 0.8.3 as:
    ~/tools/jruby-1.1.4 >bin/jruby -S gem update rake
    JRuby limited openssl loaded. gem install jruby-openssl for full support.
    http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
    Updating installed gems
    Updating rake
    Successfully installed rake-0.8.3
    Gems updated: rake
  3. Install Edge Rails as:
    ~/tools/jruby-1.1.5 >bin/jruby -S gem install rails -s http://gems.rubyonrails.org -v 2.2.0
    JRuby limited openssl loaded. gem install jruby-openssl for full support.
    http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
    Successfully installed activesupport-2.2.0
    Successfully installed activerecord-2.2.0
    Successfully installed actionpack-2.2.0
    Successfully installed actionmailer-2.2.0
    Successfully installed activeresource-2.2.0
    Successfully installed rails-2.2.0
    6 gems installed
    Installing ri documentation for activesupport-2.2.0…
    Installing ri documentation for activerecord-2.2.0…
    Installing ri documentation for actionpack-2.2.0…
    Installing ri documentation for actionmailer-2.2.0…
    Installing ri documentation for activeresource-2.2.0…
    Installing RDoc documentation for activesupport-2.2.0…
    Installing RDoc documentation for activerecord-2.2.0…
    Installing RDoc documentation for actionpack-2.2.0…
    Installing RDoc documentation for actionmailer-2.2.0…
    Installing RDoc documentation for activeresource-2.2.0…
  4. Create a new app as:
    ~/samples/jruby/edge >~/tools/jruby-1.1.5/bin/jruby -S rails helloworld -d mysql
    JRuby limited openssl loaded. gem install jruby-openssl for full support.
    http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
          create  
          create  app/controllers
          create  app/helpers
    . . .
          create  log/server.log
          create  log/production.log
          create  log/development.log
          create  log/test.log
  5. Edge Rails do not ship with any(?, atleast MySQL) pure-Ruby database drivers and throws the following error if a database related operation is performed:
    ~/samples/jruby/helloworld >~/tools/jruby-1.1.5/bin/jruby -S rake db:create
    (in /Users/arungupta/samples/jruby/helloworld)
    !!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.
    rake aborted!
    no such file to load — mysql

    (See full trace by running task with –trace)

    I find it weird that a database-backed framework does not ship database drivers. Anyway, lets install MySQL JDBC ActiveRecord adapter as:

    ~/tools/jruby-1.1.5 >bin/jruby -S gem install activerecord-jdbcmysql-adapter
    JRuby limited openssl loaded. gem install jruby-openssl for full support.
    http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
    Successfully installed activerecord-jdbc-adapter-0.8.2
    Successfully installed jdbc-mysql-5.0.4
    Successfully installed activerecord-jdbcmysql-adapter-0.8.2
    3 gems installed
    Installing ri documentation for activerecord-jdbc-adapter-0.8.2…
    Installing ri documentation for jdbc-mysql-5.0.4…
    Installing ri documentation for activerecord-jdbcmysql-adapter-0.8.2…
    Installing RDoc documentation for activerecord-jdbc-adapter-0.8.2…
    Installing RDoc documentation for jdbc-mysql-5.0.4…
    Installing RDoc documentation for activerecord-jdbcmysql-adapter-0.8.2…

    More details on configuring this adapter here.

  6. Create a simple scaffold:
    ~/samples/jruby/edge/helloworld >~/tools/jruby-1.1.5/bin/jruby script/generate scaffold runner distance:float time:integer
    JRuby limited openssl loaded. gem install jruby-openssl for full support.
    http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
          exists  app/models/
          exists  app/controllers/
          exists  app/helpers/
          create  app/views/runners
          exists  app/views/layouts/
          exists  test/functional/
          exists  test/unit/
          exists  public/stylesheets/
          create  app/views/runners/index.html.erb
          create  app/views/runners/show.html.erb
          create  app/views/runners/new.html.erb
          create  app/views/runners/edit.html.erb
          create  app/views/layouts/runners.html.erb
          create  public/stylesheets/scaffold.css
          create  app/controllers/runners_controller.rb
          create  test/functional/runners_controller_test.rb
          create  app/helpers/runners_helper.rb
           route  map.resources :runners
      dependency  model
          exists    app/models/
          exists    test/unit/
          exists    test/fixtures/
          create    app/models/runner.rb
          create    test/unit/runner_test.rb
          create    test/fixtures/runners.yml
          create&nb
    sp;   db/migrate
          create    db/migrate/20081103190813_create_runners.rb
    ~/samples/jruby/edge/helloworld >~/tools/jruby-1.1.5/bin/jruby -S rake db:create
    (in /Users/arungupta/samples/jruby/edge/helloworld)
    ~/samples/jruby/edge/helloworld >~/tools/edge/jruby-1.1.5/bin/jruby -S rake db:migrate
    (in /Users/arungupta/samples/jruby/edge/helloworld)
    ==  CreateRunners: migrating ==================================================
    — create_table(:runners)
       -> 0.0068s
       -> 0 rows
    ==  CreateRunners: migrated (0.0077s) =========================================

    Some words here.

  7. Change “config/database.yml” to use the JDBC adapter. Change:
    development:
      adapter: mysql
      encoding: utf8
      database: helloworld_development
      pool: 5
      username: root
      password:
      socket: /tmp/mysql.sock

    to

    development:
      adapter: jdbcmysql
      encoding: utf8
      database: helloworld_development
      pool: 5
      username: root
      password:
      socket: /tmp/mysql.sock

    The change is highlighted in bold letters.

  8. Download GlassFish v3 Prelude 28c, unzip and start it as:
    ~/tools/glassfish/v3/28c/glassfishv3-prelude/glassfish >java -Xmx512m -DJRUBY_HOME=/Users/arungupta/tools/jruby-1.1.5/ -jar modules/glassfish.jar 
  9. Finally deploy the application as:
    ~/samples/jruby/edge >~/tools/glassfish/v3/28c/glassfishv3-prelude/glassfish/bin/asadmin deploy helloworld

    Command deploy executed successfully.

And now the scaffold is accessible at “http://localhost:8080/helloworld/runners”.

This application does not show any of the cool features (thread-safe, i18n, pooled datbase connections, …) coming up in Rails 2.2. But at least it clearly explains how to get started if you want to develop and run a Rails 2.2 application using JRuby.

Subsequent blogs will provide more information about performance advantages, multi threading, connection pooling and other benefits offered by GlassFish for Rails applications.

Technorati: rubyonrails glassfish v3 jruby

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

November 3, 2008

Wordle: Word Cloud Applet

Filed under: web2.0 — arungupta @ 4:30 am

Wordle is pretty cool Applet (yeaaaah, still new ones are being developed ;-) that creates a word cloud from any RSS feed. I blog at blogs.sun.com and weblogs.java.net and most of the content is GlassFish-focused. Here are some wordles generated from my two feeds:

Once a wordle is generated, it can configured for different layout, font and color. Here are some more from “Miles to go” …

The corresponding tag cloud from the blog is given below:

The generated wordles do not seem to match the tag cloud (which is certainly more authoritative). For example, “NetBeans” is shown with much lesser intensity than “latitude” and “longitude”.

Anyway as evident from the wordles and tagcloud, GlassFish stands out very well – just like the product itself :)

And then couple of wordles from weblogs.java.net

Here as well, This wordle is confusing because out of 517 blog entries, I’d guess 70-80% have GlassFish mentioned there. Even then “Mojarra” (JSF implementation from GlassFish community) is highlighted much more than GlassFish. Is that a bug ?

Wordles can be generated from random text or deli.icio.us tags as well. You can even see the word count and here is a sample:

But not sure how it generates them cause I’ve used the word “GlassFish” way more than 13 times just in subject!

Anyway, create your own and have fun!

Check out Alexis’s wordles as well.

Technorati: wordle applet glassfish milestogo blogging

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

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