Scripting Support in GlassFish v3 Prelude

15
1 Dynamic Languages in GlassFish v3 Prelude Vivek Pandey Developer, Glassfish Team Sun Microsysems, Inc. 1

description

An overview of scripting support in GlassFish v3 Prelude

Transcript of Scripting Support in GlassFish v3 Prelude

Page 1: Scripting Support in GlassFish v3 Prelude

1

Dynamic Languages in GlassFish v3 PreludeVivek PandeyDeveloper, Glassfish TeamSun Microsysems, Inc.

1

Page 2: Scripting Support in GlassFish v3 Prelude

2

Page 3: Scripting Support in GlassFish v3 Prelude

3

GlassFish v3 - A Dynamic AppServerProductivity, performance

• GlassFish v3> Lightweight, Modular, Extensible, Embeddable

• Reasonable and efficient deployment choice> Native, WAR style, embedded GlassFish

• App Server feature for everyone> Database connection pooling> Native threading, non-blocking IO, ARP> Management – Monitor, Deploy, Troubleshoting> Access to enterprise stack

– Metro, Jersey, JMS/MQ, Grizzly, JBI etc.

Page 4: Scripting Support in GlassFish v3 Prelude

4

Overall Architecture

Page 5: Scripting Support in GlassFish v3 Prelude

5

JRuby on Rails

Page 6: Scripting Support in GlassFish v3 Prelude

6

JRuby On Rails• No packaging, simple deployment> asadmin deploy depot/

• Deploy as WAR> warble #creates WAR file> asadmin deploy depot.war

• Tested JRuby runtime at Updatecenter> bin/updatetool> No more config needed

• Commercially supported by Sun• http://wiki.glassfish.java.net/Wiki.jsp?page=GettingStartedGuide

Page 7: Scripting Support in GlassFish v3 Prelude

7

JRuby On Rails• NetBeans support> Develop, deploy debug

Page 8: Scripting Support in GlassFish v3 Prelude

8

GlassFish gem• Rails developer friendly• Based on GlassFish v3 nucleus• Distributed as ruby gem• Install> jruby -S gem install glassfish

• Run> jruby -S glassfish_rails myRailsApp/

• More info> http://rubyforge.org/projects/glassfishgem/

Page 9: Scripting Support in GlassFish v3 Prelude

9

Groovy on Grails

Page 10: Scripting Support in GlassFish v3 Prelude

10

Groovy on Grails• Development and production on the same server > Develop using GlassFish v3 embedded server

– grails run-app

> Production deployment– asadmin deploy grailsApp.war

• Efficient WAR packaging> grails shared-war

– Creates smaller WARs ~200KB vs 18MB– asadmin deploy –-libraries $GRAILS_HOME/lib/glassfish-grails grailsApp.war

• Get Grails IPS package from Updatecenter• http://wiki.glassfish.java.net/Wiki.jsp?page=GrailsGettingStarted

Page 11: Scripting Support in GlassFish v3 Prelude

11

PHP

Page 12: Scripting Support in GlassFish v3 Prelude

12

PHP• Quercus (Caucho)> Open Source (GPL) PHP 5 implementation in Java> WAR packaging> WordPress, MediaWiki, phpBB, Joomla

• PHP/Java Bridge> Open Source (LGPL)> XML based network protocol for native PHP> Faster, easier than JNI> Java native threads used for concurrent requests> PHP and JSP session sharing

Page 13: Scripting Support in GlassFish v3 Prelude

13

Scala on Lift

Page 14: Scripting Support in GlassFish v3 Prelude

14

Scala on Lift• Lifts apps packaged as WAR

> asadmin deploy liftApp.war

• For details on developing and deploying Lift applications see> http://wiki.glassfish.java.net/Wiki.jsp?page=GettingStartedWithLiftOnGlassFish

Page 15: Scripting Support in GlassFish v3 Prelude

15

References• GlassFish> https://glassfish.dev.java.net

• GlassFish Scripting Project> https://glassfish-scripting.dev.java.net

• Scripting Wiki> http://wiki.glassfish.java.net/Wiki.jsp?page=Scripting

• Mailing List> [email protected]

• IssueTracker> https://glassfish.dev.java.net/servlets/ProjectIssues

• TheAquarium> http://blogs.sun.com/theaquarium