読者です 読者をやめる 読者になる 読者になる

本腰入れてJRuby(その4) スクリプトの世界からJavaの世界へ値を渡すには

JRuby

Java側から呼び出すときにBSFManager#eval()で呼び出せば、返値として最後に評価したオブジェクトが返却されますが、複数のオブジェクトを返すにはどうするのがいいんだろうと。答えはBSFManager#registerBean(String,Object)で登録し、Javaの方に処理が帰ってきたらBSFManager#lookupBean(String)でいいらしいよ。JRubyから値を返すんだったらこんな感じ。

require 'yaml'
conf = YAML.load(なんかのファイル)
$bsf.registerBean("conf",conf)