Date Name Downloads
Jun 5, 2012 Beta 3 187
May 21, 2012 Beta 2 113
Apr 26, 2012 Beta 1.1 127
Apr 23, 2012 Beta 1 97
Beta 1.1
Beta 1.1
Apr 26, 2012
Apache License
127

Note: Beta 1.1 is the same code as Beta 1 - the only difference is the addition of a NOTICE file.

 


        <strong>Features</strong></div>

        &nbsp;
    <ul dir="ltr" style="padding-right: 40px; ">
        <li>
            Works with both #-style and $-style bindings and for both value bindings and method bindings (e.g. beforePageLoad)</li>
        <li>
            Allows for Ruby &quot;Script Libraries&quot;. For now, these are accomplished by creating a &quot;ruby&quot; folder inside the database&#39;s WEB-INF folder (via Package Explorer) and putting Ruby scripts in there. Then, they can be references on a page like a normal library but with &quot;text/ruby&quot; or &quot;text/x-ruby&quot; as the type: &lt;xp:script src=&quot;/somelibrary.rb&quot; type=&quot;text/ruby&quot; clientSide=&quot;false&quot;/&gt;</li>
        <li>
            Can access local variables as readily as in Server JavaScript, such as &quot;session&quot;, &quot;database&quot;, and repeat-local variables</li>
        <li>
            The included file &quot;domino.rb&quot; contains some extensions for the Domino product objects in Ruby, allowing for Ruby-style looping in collection classes (e.g. docs.each { |doc| ... }) and hash-style access to a document&#39;s item values (e.g. doc[&quot;Form&quot;]). It is meant to be added to the project as a &quot;Script Library&quot; as described above</li>
        <li>
            Though currently commented out, there is some extremely-basic support for arbitrary other scripting languages. If you uncomment the applicable/* */ block in frostillicus/ScriptingViewHandler.java, it will register all available JSR-223-compliant languages with binding names based on the language name provided by the language package (such as &quot;#{Groovy: ... }&quot; or &quot;#{scheme: ... }&quot;). Note that other languages have had essentially no testing, Jython is known to be problematic, and there is no automatic variable resolution. See&nbsp;<a href="http://frostillic.us/f.nsf/posts/F660516EC59A25FC852579E5007D5F9C">http://frostillic.us/f.nsf/posts/F660516EC59A25FC852579E5007D5F9C</a>&nbsp;for a casual overview</li>
    </ul>

        &nbsp;

        &nbsp;

        <strong>Installation</strong></div>
    <ul dir="ltr" style="padding-right: 40px; ">
        <li>
            Install JRuby 1.6+ on the server. The most straightforward way to do this in lieu of an Eclipse Update Site package is to download jruby-complete.jar and place it in the server&#39;s jvm/lib/ext folder, then restart HTTP</li>
        <li>
            I&#39;m not sure if it&#39;s necessary, but if you run into security problems, it may be required to grant the JVM additional permissions:&nbsp;<a href="http://www-01.ibm.com/support/docview.wss?uid=swg21279509">http://www-01.ibm.com/support/docview.wss?uid=swg21279509</a></li>
        <li>
            In the application where you want to use Ruby bindings, copy in the provided Java classes as Java design elements (or otherwise add them to the project&#39;s build path)</li>
        <li>
            Modify the application&#39;s faces-config.xml to add frostillicus.ScriptingViewHandler as a view handler (see faces-config-example.xml)</li>
        <li>
            Start using &quot;#{ruby: ... }&quot; bindings! I suggest starting with something simple, like &lt;xp:text value=&quot;#{ruby:Time.now.year}&quot;/&gt; for troubleshooting purposes</li>
    </ul>
</div>