Rest Services usando JRuby y Sinatra

Preview:

DESCRIPTION

Como correr una aplicación de servicios REST desarrollada en el DSL Sinatra dentro de un servidor de aplicaciones JEE.

Citation preview

Servicios REST con JRuby y Sinatra

jorge.rodriguez@continuum.cl@j4rs

jueves 27 de enero de 2011

basada en hechos reales...

jueves 27 de enero de 2011

require 'sinatra'get '/hi' do "Hello World!"end

jueves 27 de enero de 2011

require 'sinatra'get '/hi' do "Hello World!"end

jueves 27 de enero de 2011

o lo que es lo mismo

jueves 27 de enero de 2011

jueves 27 de enero de 2011

ningún sentido

jueves 27 de enero de 2011

a no ser que

jueves 27 de enero de 2011

requerimientos

jueves 27 de enero de 2011

necesitemos heredar javajueves 27 de enero de 2011

¿wait, porque no java puro?

jueves 27 de enero de 2011

porque soy cool & fashionist

jueves 27 de enero de 2011

porque no soy masoquista

jueves 27 de enero de 2011

no, en realidad porque...

jueves 27 de enero de 2011

aplicación

jueves 27 de enero de 2011

aplicación

jueves 27 de enero de 2011

o sea, no somos masoquistas

jueves 27 de enero de 2011

solución

jueves 27 de enero de 2011

Servicios REST en un lenguaje REST corriendo

sobre una JVM

jueves 27 de enero de 2011

ruby + jvm = jruby

jueves 27 de enero de 2011

$ rvm install jruby-1.5.6

jueves 27 de enero de 2011

DSL Sinatra

jueves 27 de enero de 2011

Usando javajueves 27 de enero de 2011

$ gem install bundler

jueves 27 de enero de 2011

source "http://rubygems.org"source "http://gemcutter.org"gem "sinatra"gem "sinatra-reloader"gem "json"gem "twitter_oauth"gem "pony"gem "haml"gem "xml-object"gem "fog"gem "carrierwave"gem "jruby-openssl"

Gemfile

jueves 27 de enero de 2011

require 'rubygems'require 'bundler'

Bundler.require

require 'sinatra'require 'sinatra/reloader' if development?require 'lib/chservices'set :environment, :developmentset :run, false...run Sinatra::Application

config.ru

jueves 27 de enero de 2011

run.sh

jueves 27 de enero de 2011

instalar en servidor JEE

jueves 27 de enero de 2011

https://github.com/nicksieger/jruby-rack

jueves 27 de enero de 2011

$ gem install warbler

jueves 27 de enero de 2011

config/warble.rbjueves 27 de enero de 2011

config/web.xml

jueves 27 de enero de 2011

$ warble war

jueves 27 de enero de 2011

$ cp app.war $TOMCAT_HOME/webapps

jueves 27 de enero de 2011

http://localhost:8080/app

jueves 27 de enero de 2011

gracias

jueves 27 de enero de 2011