Instalando uma aplicação Ruby on Rails em GlassFish

2006 December 18, 13:34 h - tags: jruby obsolete

Do Ashish’s Weblog : Existem algumas maneiras de rodar uma aplicação Ruby on Rails (RoR) em um servidor Java EE. Uma delas é criar um arquivo WAR contendo a aplicação RoR com a adaptação de código apropriada entre o servidor de aplicação e a aplicação ruby. Sobre como desenvolver e instalar uma aplicação RoR no GlassFish – um servidor de aplicação Java EE 5 open source – siga os seguintes passos:

  1. Instale o servidor de aplicação GlassFish
  2. Instale o JRuby
  3. Instale o Framework Rails gems install rails -y (se estiver atrás de um proxy use set HTTP_PROXY=http://${http-proxy-host}:${http-proxy-port}/)
  4. Instale o activerecord-jdbc com gems install activerecord-jdbc
  5. Instale o driver database/jdbc (para mysql http://mysql.com/)
  6. Gere sua aplicação RoR (http://rubyonrails.org/)
  7. Modifique database.yml
  8. development:
    adapter: jdbc
    driver: com.mysql.jdbc.Driver (for mysql)
    url: jdbc:mysql://${database-hostname}/${db-schema}
    username: ${username}
    password: ${password}
  9. Modifique o environment.rb adicionando:
  10. require ‘active_record/connection_adapters/jdbc_adapter’
  11. Faça o check out do projeto rails-integration a partir do svn://rubyforge.org/var/svn/jruby-extras/trunk/rails-integration, recompile e coloque o rails-integration-${version}-SNAPSHOT.jar dentro do WEB-INF/lib.
  12. Modifique o template web.xml (veja as referências abaixo) com o valor correto do jruby.home
  13. Crie um diretório WEB-INF no diretório da aplicação RoR
  14. Copie o web.xml no WEB-INF e coloque o _ rails-integration-${version}-SNAPSHOT.jar em WEB-INF/lib
  15. Faça WAR do diretório da aplicação RoR com o comando jar

Requisições para o context-root apropriado da aplicação web instalada devem invocar seu código Ruby !

Se quiser automatizar a construção do arquivo war: edite rails-integration/build.xml e adicione o seguinte trecho de XML:









Tenha certeza que o JRUBY_HOME está configurado e rode ant -Drails-app-dir=${ror-app-dir} -Drails-app-name=${war-file-name} build-rails-war. O ${ror-app-dir}/${ror-app-name}.war deve estar pronto para ser instalado !

Tudo isso é um trabalho em progresso e alguma coisa pode mudar logo. Obrigado aos desenvolvedores do rails-integration e ao pessoal do jruby!

Comments

comentários deste blog disponibilizados por Disqus