Then I did asadmin list-jndi-entries from my glassfish installation and found that the JNDI name is actually org.ejb.session.interfaces.HelloWorldHome. So I changed my lookup to use the above reference and it worked.
My question here is, I thought ejb-name in deployment descriptor would be used in JNDI lookup. Did I miss any other file? I knew that, I did not use any container specific configuration file, but I thought GlassFish provides one by default. So is the default setting of GlassFish is to use the entire home object including the package.