【问题标题】:Running Ruby scripts under JRuby/Rack as if they were CGIs在 JRuby/Rack 下运行 Ruby 脚本,就像它们是 CGI 一样
【发布时间】:2009-05-29 20:11:05
【问题描述】:

有没有办法映射 *.rb 文件以在 JRuby 下执行,并将输出像 CGI 一样发送到浏览器?基本上我正在寻找一个 JRuby CGI servlet。

理想情况下,我想在 web.xml 中定义一个 JRuby servlet,然后能够将 *.rb 文件放在 WEB-INF/ruby 中,并能够通过 http://servername/contextname/rubyprogram.rb 调用它们并将数据传递给 ruby通过表单发布或作为 URL 的一部分进行编程。

编辑:我做了更多的研究,发现了 Sun 的项目 Phobos(将整个 Ruby 安装捆绑在一个 WAR 文件中)和 JRuby RACK。

有没有人能够设置一个轻量且简单的 Rack 安装来做到这一点?有人知道可以让我这样做的示例配置吗?

【问题讨论】:

    标签: ruby servlets cgi jruby rack


    【解决方案1】:

    您应该查看Warbler。它是一个 gem,可让您将 Ruby 应用程序打包为 WAR 文件并在 servlet 容器中运行(在 JRuby-Rack 的帮助下)。

    您还应该查看 Glassfish gem,它包含 Glassfish 应用服务器的精简版本,可以轻松加载与 Rack 兼容的应用程序并在 JRuby 中运行。

    这里有一个关于如何在 Glassfish 中运行 JRuby 应用程序的截屏视频:http://netbeans.tv/technologies/First-JRuby-app-in-GlassFish-86/

    这里还有很多其他资源: http://kenai.com/projects/jruby/pages/WalkthroughsAndTutorials

    【讨论】:

      【解决方案2】:

      我对 J2EE 不太熟悉,但您可以编写自己的 Java servlet,将 Ruby 脚本名称作为参数并使用 JRuby 作为库来执行它。

      JRuby 网站上有关于如何从 Java 程序运行 Ruby 脚本的示例。

      【讨论】:

        猜你喜欢
        • 2021-06-27
        • 1970-01-01
        • 2015-03-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多