jMaki on Rails - Updated for NetBeans 6 M10
Posted by arungupta on July 23, 2007 at 2:20 PM EDT
Based upon a
user request, this is a follow up entry to show how
jMaki
on Rails For Dummies work on
NetBeans 6
Milestone 10. Some of the steps are simplified and more details are
provided. The updates from the previous blog entry are
highlighted in this color.
- Download NetBeans 6.0 M10 (Full version) and configured to install only "Base IDE", "Java IDE", "Web and Java EE" and "Ruby" modules. A cutting-edge build can be obtained from the hudson build.
- Download and install
jMaki
plug-in in NetBeans update center.
- In NetBeans '
Tools', 'Plugins', select 'Downloaded', click on 'Add Plugins ...'. - Select the downloaded .NBM module, click on 'Install' button (bottom left corner). Follow the next few instructions to install jMaki plug-in and restart the IDE.
- To verify, go to '
Tools', 'Plugins', select 'Installed'. It should show 'jMaki Ajax support' with today's installation date.
- In NetBeans '
- Create a new "Ruby on Rails Application" Project, lets say named '
jmaki_ror'. Take everything else as default. - Create a new controller by right-clicking the project,
select '
Generate ...', select 'controller', specify the Name as 'jmaki' and Views as 'yahoo'. - jMaki-enable the Rails app
- Right click on your Rails project, select "Rails Plugins ...".
- Select the "Repositories" tab.
- Click "Add URL" and specify "
http://jmaki-goodies.googlecode.com/svn/trunk/rails_plugins". This adds the plug-in registry to the list of repositories used for searching plug-ins. - Now install the jmaki runtime. Select the "New Plugins" tab .
- Multi-select
jmaki_coreandjmaki_yahooand press "Install". Follow the instructions and the two plug-ins will be installed. After the installation is complete, you'll see the following:

and click on 'Close'. - Expand '
Views', right-click on 'layouts', select 'New', select 'RHTML file ...'. Enter the 'File Name' as 'standard'. This will add 'standard.rhtml' in layouts sub-tree. Enter the following fragment before <body>:
<head>
<%= stylesheet_link_tag "jmaki-standard", :media => "all" -%>
<%= javascript_include_tag "jmaki" -%>
<%= jmaki_setup -%>
</head> - Within <body>, add the following fragment:
<%= @content_for_layout %> - In '
Controllers', 'jmaki_controller.rb', add the following fragment before 'def yahoo' line:
layout "standard"
- Download and Configure the MySQL database
- Download MySQL 5.0 Community Server and install by taking all the default values.
- In a command prompt window, Start MySQL
server using the command: '
mysqld-nt --user root'. - Create database using the command: '
mysqladmin -u root create jmaki_ror_development'. You need to make sure that the database name in this script is changed to match the project name. - Right select the NetBeans project, select '
Generate', select 'model', specify the arguments as 'grid', click 'OK'. This will generate, in NetBeans project, Database Migrations, migrate,001_create_grids.rb. - Open
001_create_grids.rb, changeself.uphelper method such that it looks like:
def self.up
create_table :grids do |t|
t.column :company, :string
t.column :price, :float
t.column :change, :float
t.column :percent_change, :float
t.column :last_updated, :string
end
end - Right-select NetBeans project, select '
Run Rake Target', 'db', 'migrate'. This generates the database table. - Execute the query to insert data into the table.
- The easiest way to run this query is to run
mysql client in the command prompt window as: '
mysql --user root'. - Enter the command as '
use jmaki_ror_development' to see the following interaction:
mysql> use jmaki_ror_development;
Database changed - And then execute the query given below:
insert into grids values (1, 'A Co', 71.72, 0.02, 0.03, 'Jan 1, 2007, 10:00am' );
insert into grids values (2, 'B Inc', 29.01, 0.42, 1.47, 'Feb 1, 2007, 10:00am' );
insert into grids values (3, 'C Group Inc', 83.81, 0.28, 0.34, 'Mar 1, 2007, 10:00am' );
insert into grids values (4, 'D Company', 52.55, 0.01, 0.02, 'Apr 1, 2007, 10:00am' );
- The easiest way to run this query is to run
mysql client in the command prompt window as: '
- Add jMaki-wrapped Yahoo DataTable widget
- In NetBeans project, in '
Views', 'jmaki', 'yahoo.rhtml', drag-and-drop 'Data Table' widget from the 'Yahoo' category of jMaki palette.- Until the jMaki data model for grid and data
widgets is consistent between Java and JRuby, you need to replace the
generated code in '
yahoo.rhtml' with the following:
<%= jmaki_widget 'yahoo.dataTable',
:args => {
:columns => [
{ :title => 'Company', :width => 200, :locked => false },
{ :title => 'Price', :width => 75, :renderer => 'usMoney' },
{ :title => 'Change', :width => 75, :renderer => 'change' },
{ :title => '% Change', :width => 75, :renderer => 'pctChange' },
{ :title => 'Last Updated', :width => 85, :renderer => 'italic' }
]
},
:value => @table_data
-%> - '
@table_data' is defined in 'jmaki_controller' in 'def yahoo' as:
def yahoo
@table_data = []
Grid.find_all().each do |data|
@table_data << [ data.company, data.price, data.change, data.percent_change, data.last_updated]
end
end
- Until the jMaki data model for grid and data
widgets is consistent between Java and JRuby, you need to replace the
generated code in '
- In NetBeans project, in '
- That's it, run your app and view the page at '
http://localhost:3000/jmaki/yahoo'. Now jMaki-wrapped Yahoo DataTable widget is picking data from the MySQL database.
And as a next step, you can WAR'up this RoR application and deploy it on GlassFish V2 using these instructions.
Technorati: jmaki rubyonrails ror netbeans mysql glassfish
Related Topics >>
Blog Links >>
- Login or register to post comments
- Printer-friendly version
- arungupta's blog
- 1027 reads





