Rails On Spring
-
Upload
swamy-g -
Category
Technology
-
view
3.423 -
download
1
description
Transcript of Rails On Spring
Rails on SpringUsing JRuby as the Secret Sauce
Brian Sam-Bodden
Agenda
The State of Java and JEE
Ruby on Rails to the Rescue
Ruby makes Rails possible
The Spring Framework
Agenda
JRuby - Ruby on Steroids
JRuby on Rails
JRuby for Rapid Spring Prototyping
JRuby on Rails and Spring
The State of Java and JEE
Java & JEE
the most prevalent language
the most complete enterprise platform
a rich ecosystem of web frameworks
a vibrant open source community
plagued by mediocre web frameworks
not well suited for rapid prototyping
in need of a dynamic language web framework
one level of abstraction too low for the web
Java & JEE
Who could help Java on the Web Tier?
Ruby on Rails
a revolutionary web framework
complete MVC solution
fast prototyping
killer AJAX support
a DSL for the web
leading the pack on the web 2.0 front
born from a product, not a committee
a vibrant open source community
Ruby on Rails
Ruby makes Rails possible
Rubyis...
✓Object-Oriented
✓Reflective ✓Dynamic
✓ Interpreted
✓General Purpose
✓ Multi-paradigm
✓ Garbage-collected
✓Elegant
The Spring Framework A breath of fresh air for Java
The Spring Framework
is a lightweight IoC and AOP framework
is the leading framework to build enterprise applications
is one level of abstraction up from JEE
is a layered Java/J2EE application framework
The Spring Framework
let’s you use all of the power of JEE
integrates seamlessly with Hibernate
POJO-based development keeps your code clean
harnesses the power of IoC and AOP
The Spring Framework
Spring 2.0 supports dynamic languages
support for JRuby, Groovy and BeanShell
beans can be backed by dynamic languages
scripted MVC controllers
JRubyRuby on Steroids
JRuby
100% pure-Java implementation of Ruby
brings Ruby to the JVM
started in 2002, now under Sun’s auspice
open source with a growing community
JRuby
call Ruby from Java or Java from Ruby
lots of sub-projects emerging
better scalability with native threading
native unicode support
JRuby
specialized JRuby offerings are appearing...
The good gets better
JRuby on Rails
the agility of rails - the scalability of Java
JRuby likely to surpass Ruby in speed
sneak Ruby and RoR into the enterprise!
JRuby on Rails
JRuby on Rails
JRuby on Rails
JEE servers are good at scaling up
no more multi-process management
use JRuby “multi-VM” support
leverage the maturity of the JVM and JEE servers
JRuby on Rails
deploy your Rails app as a WAR
leverage JDBC from ActiveRecord
JRubyFor Rapid Spring Prototyping
...one way of sneaking Ruby in through the back door
JRuby+Spring RAD
a simple example by the folks at jobster
use JRuby for rapid prototyping
Spring controller that delegates to a JRuby controller
JRuby controllers live alongside your JSPs
JRuby+Spring RAD
Simple JRuby controller
JRuby+Spring RAD
JSP view provides input to the Ruby controller
JRuby+Spring RAD
JSP view provides input to the Ruby controller
JRuby+Spring RAD
this experimental library supports:
✓access to Spring beans from JRuby code
✓ access to Hibernate queries
The Perfect Pairing for a Java ShopJRuby on Rails + Spring
JRoR on Spring
✓use rails-integration plugin
✓ expose WebApplicationContext in a RoR controller
Chris Nelson’s work
✓include Spring - Spring plugin for JRuby
JRoR on Spring
✓install goldspike rails-integration plugin on you JRoR app
✓ rake war:standalone:create to package a WAR with:
➡Your RoR app
➡JRuby and Rails libraries
JRoR on Spring
rake war:standalone:create in action:
JRoR on Spring
generated WARs work on many servers:
✓Tomcat
✓Jetty
✓Glassfish
✓JBoss
JRoR on Spring✓ add Chris’ Spring module:
JRoR on Spring
✓Add Spring application
✓Expand the generated WAR
➡Application Code
➡ Libraries (Jars)
➡Config Files
JRoR on Spring
✓ access your Spring beans from a RoR controller
JRoR on Spring
✓add a new face to your Spring applications
✓ leverage thousands of open source projects
✓leverage the good parts of JEE like JDBC and JMS
ResourcesJRuby
www.jruby.orgrubyforge.org/projects/jruby-extras
JRuby Rails Integrationwww.headius.com/jrubywiki/index.php/Rails_Integration
headius.blogspot.com/2006/11/advanced-rails-deployment-with-jruby.html
RAD Spring Prototyping with JRubythebogles.com/blog/projects/ruby-on-spring/
www.botspiritcompany.com/src/springruby/example_ruby_spring.html
Chris Nelson’s Workmysterycoder.blogspot.com/2007/06/spring-jruby.html
mysterycoder.blogspot.com/2007/06/include-spring.html
Books by Integrallis
Yes, they are all Java books :-(
Thanks!