Forum: Italian Ruby user group Chiamare Java con JRuby

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
457cf601889947ce07fd003c28192d58?d=identicon&s=25 Cecchin Daniel (dynamic84)
on 2009-05-02 14:50
Buon giorno,
in questi mesi sono impegnato nella gestione di un progetto
universitario per la Creazione di un sito di gestione annunci....

Ho qualche problema nel comprendere se la mia impostazione è corretta
per l'esecuzione delle varie operazioni.

Dopo aver scritto il codice Java, ed esportando il codice Jar creo il
mio progetto JRuby.

Utilizzo la versione agg. Jruby --version 1.8.6
Rails -- version 2.3.2
mongrel Versions: 1.1.5
jdbc-mysql Version: 5.0.4

La mia idea è quella di utilizzare la parte java per realizzare ogni
operazione con JRuby.

Il progetto in Java è stato realizzato con la libreria
Driver JDBC Mysql -mysql- connector-java-5.1.6-bin.jar
E quì sorgono i dubbi... le due versioni devono esser uguali ???
la mia risposta: che per me non serve quell'impostazione visto che
utilizzo le varie classi che funzionano in Java.

Realizzato un PostManagement dove al suo interno ha il metodo addPost()
Questo metodo richiede un'instanza di PostInformation che è un'altra
classe con tutta la sfilza di set per il Post, si connette ed aggiunge a
Db_mysql


Ho settato il file enviroment.rb del contenuto della folder Controller
require 'rubygems'
  gem 'activerecord-jdbc-adapter'
  # require 'jdbc_adapter', perchè lo esegue il Java
  include Java

  config.frameworks -= [ :active_record ]

   Dir["#{RAILS_ROOT}/lib/**/*.jar"].each do |jarfile|
       require jarfile
   end

Poi ho creato il controller***************************************

def PostController < ApplicationController

def create
    @post_info = PostInformation.new

 # inserimento dati manualmente
    post_info.setTitle(params[:title])
    post_info.setDescription(params[:description])

   @post_mgm = PostManagement.new
    post_mgm.addPost(post_info)

    respond_to do |format|

      if post_mgm.addPost(post_info)
        flash[:notice] = 'Post creato con successo.'
        format.html { redirect_to(@post) }
        format.xml  { render :xml => @post, :status => :created,
:location => @post }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @post.errors, :status =>
:unprocessable_entity }
      end
    end
  end

 def new
    @post = post_mgm.addPost(post_info)
    respond_to do |format|
      format.html # new.html.erb
      format.xml  { render :xml => @post }
    end
  end

****************************
Model

class Post

# questo serve o è giusto per comunicare con la view
   def title
        @post_info = PostInformation.new
        @title = post_info.setTitle(" ")
   end

end

*****************************
view

<h1>New post</h1>

<% form_tag :controller => 'posts', :active => 'create' do %>

  <p>
    <%= label_tag :title %><br />
    <%= text_field_tag :title   %>
  </p>

  <p>
    <%= label_tag :description %><br />
    <%= text_area_tag :description  %>
  </p>


  <p>
   <%= submit_tag 'Create' %>
  </p>
<% end %>

<%= link_to 'Back', posts_path %>


Grazie Mille, è corretto questo inserimento
Daniel
This topic is locked and can not be replied to.