问题标签 [trinidad-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
115 浏览

ruby - 从哈希中获取值

我正在使用 gem twitter_oauth。我放入令牌,然后得到我的access_token. 现在我想访问这个哈希中的一些信息,但由于某种原因它不会让我这样做。我能做的最好的就是检查它:

我试图访问这样的值:

所有这些都导致了内部服务器错误。报告错误时没有提供其他信息。

我正在使用 JRuby 1.7 RC2 和最新的 Trinidad Web 服务器。我也在 WEBrick 中尝试过这个,并且出现了同样的错误。

0 投票
1 回答
113 浏览

session - 不保留会话值

我在 Trinidad 服务器上使用 JRuby(最新,1.7 RC2)/Sinatra 混合,以获取背景信息。

我期望的输出是(带评论):

但我真正得到的是:

并且在发布之后,/signed_in仍然没有输出价值,当它真的应该是true

为什么不保留这些值?不,我没有使用shotgun,我确实启用了会话,并且我确实设置了会话密码。

0 投票
2 回答
494 浏览

jsp - 在 Java EE Servlet Webapp 中使用 JRuby 替换 JSP

我一直在使用新的 Torquebox (JBOSS) 应用程序服务器,并且喜欢我目前所看到的,但是 ruby​​ 应用程序似乎与 java webapps 是隔离的。就像它们作为单独的 web 应用程序在孤岛中运行并且混合它们是模糊的,尽管我读到会话可以共享......这很酷。

我有一个以 Java EE Servlet JSP 样式构建的传统 Web 应用程序,我希望能够使用 ruby​​ 作为我的表示层逻辑,而不是正在使用的 JSP。

我应该能够从 Web 请求上下文运行 ruby​​ 资源。就像 apache mod_ruby 开始处理 rhtml...(目标:让 tomcat 或 JBoss 这样做,所以 trinidad 或 torquebox)

例如,我可以用 HelloWorld.rhtml 或 .rb 替换 HelloWorld.jsp(可以调用我的 java 包...)?它也可以调用我的 java 类,因为它是 JRuby ......

到目前为止,我可以单独创建 RoR 应用程序和 sinatra,但是......我想要 Java webapp 中的 ruby​​ 而不是 ruby​​ webapp 中的 Java。

有谁知道我现在问的问题是否可以用 Torquebox 或 Trinidad 实现?

0 投票
1 回答
283 浏览

ruby-on-rails - 调试 Rails 和 Trinidad

我正在开发一个使用特立尼达的 rails 3 应用程序。我一直在使用 RubyMine(4.5),但我一生都无法弄清楚如何调试应用程序。它在非调试模式下从 IDE 运行良好,但是当您尝试调试时,它说它无法调试 trinidad 应用程序。为什么会这样说?

我还尝试从命令行运行 trinidad 和 rdebug,然后使用远程调试配置从 RubyMine 附加到它。我可以附加,但我不能设置任何断点。而且,如果不重新启动,对 ruby​​ 代码的更改似乎也不会生效。

我认为在从 RubyMine 进行调试时,我主要通过使用 Webrick 来解决这些问题。在这种情况下,我可以设置并点击断点,但由于某种原因,我对 ruby​​ 代码所做的任何更改在我重新启动服务器之前都不会生效。事实上,我能够即时更改 ruby​​ 代码的唯一方法是在非调试模式下运行应用程序时。

所以我想做的是:使用 RubyMine 中的 trinidad 进行调试,并且能够即时更改 ruby​​ 代码。或者,如果这不可行,请使用 RubyMine 中的 Webrick,并且还可以即时更改代码。

谢谢你的帮助!

0 投票
1 回答
255 浏览

jruby - 在 Trinidad 上包含用于 jruby/rails 的罐子

我正在尝试在特立尼达上运行我的 jruby 应用程序。

按照自述文件,我将 trinidad gem 包含在 gemfile 中并运行

rails server -e production -p 80 -d trinidad

当我使用浏览器访问我的服务器时,它给了我一条错误消息,说明它如何无法为我的数据库驱动程序找到正确的类,lib/odbc6.jar如果我使用 WEBrick 运行该项目,它就可以正常工作。错误消息如下所示:

我究竟做错了什么?

0 投票
1 回答
168 浏览

ruby-on-rails - 使用 Trinidad Gem 设置公用文件夹

我正在使用 trinidad gem 运行 rails 应用程序。我正在使用允许我将其与 Rack 处理程序一起使用的方法:

public/但是,每当我尝试访问 rails文件夹中的某些内容时,它都会给我一堆 404 错误。自述文件似乎建议我添加该选项--public PUBLIC_DIR,以便服务器知道将什么视为公用文件夹,但是当我将其添加到我的调用中时:

它给了我这个错误:

我的视图和资产管道中的其他所有内容都得到了很好的服务,所以我想我可以将所有内容都放在一个资产文件夹中,但如果可能的话,我想把它做好。此外,似乎由于未正确提供公用文件夹,因此也找不到任何预编译的资产。

0 投票
0 回答
253 浏览

trinidad-gem - 将 MIME 定义添加到特立尼达

我正在使用 trinidad gem 来托管我的 jruby 应用程序。

.woff但是,任何对.ttf字体文件的请求都会得到400 Bad Request.

当我使用 jar-ing 项目warbler并将 jar 文件转储到常规 Tomcat 实例中时,我能够在web.xml.

但是,我不知道如何为 trinidad gem 使用的 Tomcat 实例执行此操作,并且文档似乎没有列出它。它确实提到了指定一个web.xml文件用作 Web 应用程序的默认文件,但这似乎是放在WEB-INF文件夹中的文件,当我为其放入 Tomcat 文件时,服务器没有启动conf/web.xml

我还尝试将以下行添加到config/initializers/mime_types.rb

但这似乎不会影响public文件夹(如果确实如此,我会感到惊讶......)。

我在哪里可以找到如何做到这一点?

0 投票
1 回答
483 浏览

jruby - 使用 Trinidad 和 Jruby on Rails 应用程序配置 Apache

Trinidad 文档详细介绍了如何启动和运行 Jruby on Rails 应用程序,但是有人可以告诉我/指向我有关如何配置 Apache 以使用 Trinidad 服务器的好教程吗?

0 投票
1 回答
801 浏览

sinatra - sinatra 应用在 jruby 上的性能

我有一个 sinatra 应用程序,它的执行速度比我想要的要慢得多。我的第一个怀疑是我自己的代码是瓶颈,所以我将它提取到一个独立的基准测试脚本中。

make_calls 调用我自己的代码的地方。我很高兴地说,当我们达到 100 个线程时,所有线程中 make_calls 的累积时间是 0.6 秒,这对于我的目的来说已经足够快了。我在上面的线程中包装 make_calls 方法的原因是因为我自己的代码使用线程(通过 java.concurrent.FixedThreadPool(500) 的 java 本机线程)/ExecutorService,我想确保这在一个环境中表现良好可能使用其他线程模型。一旦 jruby 热身,单线程中的单次迭代将在大约 0.02 秒内运行。

所以上面是好的,但是当我将它添加到一个 sinatra web 服务器时:

对此端点的请求的响应时间约为 0.5 秒 - 增加并发请求的数量,响应时间以线性方式上升。我已经使用了 jetty-rackup 和 trinidad 来尝试这个,在 linux 和 solaris 上都使用了 jruby 1.7。

我试图优化 trinidad 实例无济于事(最大/最小运行时间等)。我们看到的最佳性能是在线程安全中运行任一服务器!模式,并且两台服务器在此模式下都表现出比较的性能。

谁能向我解释时间消耗在哪里或如何改进此设置?

0 投票
1 回答
271 浏览

jruby - 拥有 trinidad 的最简单方法取决于 jruby-rack 的替代版本?

当前的 Trinidad gem 依赖于 jruby-rack 1.1.0,对于我的每一项资产,我的开发日志中都会显示一些错误

/Users/bijan/.rvm/gems/jruby-1.7.3/gems/rack-1.4.5/lib/rack/utils.rb:399 warning: multiple values for a block parameter (2 for 1)

这是一个显然已经在当前的 jruby-rack (1.2) master 分支中解决的问题,我想让 trinidad 依赖于此。

有没有办法从我的 Gemfile 中做到这一点?或者比分叉 Trinidad gem 并指定不同版本的 jruby-rack 更简单的解决方案(并希望它可以工作,因为它可能不会)。