Getting Started With JRuby on Rails for Sun GlassFish Enterprise Server v3 Prelude

ProcedurePassing Data From the Controller to the View

Exchanging data between the controller and the views is a common task in web application development. This task shows you how to set an instance variable in the controller and access its value from the view.

  1. Open <JRUBY_HOME>/samples/hello/app/controllers/home_controller.rb in a text editor.

  2. Add an instance variable called @hello_message to the action called index, so that the controller looks like this:

    class HomeController < ApplicationController
    def index
    @hello_message = "Welcome to JRuby on Rails on the Sun GlassFish Enterprise Server"
    end
    end

    In Rails, the actions are supposed to map to views. So, when you access the index.html.erb file, the index action executes. In this case, it makes the @hello_message variable available to index.html.erb.

  3. Save the file.

  4. Open <JRUBY_HOME>/samples/hello/app/views/home/index.html.erb file in a text editor.

  5. At the end of the file, add the following output block:

    <%= @hello_message %>

    This JRuby code embedded into the view, inserts the value of @hello_message into the page. When you run the application, you can see “Welcome to JRuby on Rails on the GlassFish Enterprise Server” in your browser.

  6. Save the file.