JRuby:无法将 class org.jruby.RubyObject 的实例转换为 class java.time.Instant
JRuby: cannot convert instance of class org.jruby.RubyObject to class java.time.Instant
我正在开发 Ruby on rails (Rails 3.2.22.4) 应用程序。 Ruby 是 JRuby (jruby1.7.x).
问题
我正在从这个 rails 应用程序调用 RESTful Java 服务。调用java服务的请求包含java.time.Instant
,我尝试使用rubyTime
,DateTime
,直接使用java_import
创建java.time.Instant,但其中 none 有效。我得到了
TypeError: cannot convert instance of class org.jruby.RubyObject to class java.time.Instant
问题
我应该使用任何 ruby class 或其他解决方法来解决此类型转换问题吗?
谢谢!
JRuby 9.2 在执行 Time/DateTime#to_java
时默认支持这些
因此,当 JRuby 的 Java 集成看到 java.time.Instant
参数时,它将自动转换为 Ruby Time
(或 DateTime
) 对象。
for (old) JRuby 1.7 这显然行不通,但直接创建 java.time.Instant
类型确实应该行得通,因此请继续研究。很难说你有什么失败。
我正在开发 Ruby on rails (Rails 3.2.22.4) 应用程序。 Ruby 是 JRuby (jruby1.7.x).
问题
我正在从这个 rails 应用程序调用 RESTful Java 服务。调用java服务的请求包含java.time.Instant
,我尝试使用rubyTime
,DateTime
,直接使用java_import
创建java.time.Instant,但其中 none 有效。我得到了
TypeError: cannot convert instance of class org.jruby.RubyObject to class java.time.Instant
问题
我应该使用任何 ruby class 或其他解决方法来解决此类型转换问题吗?
谢谢!
JRuby 9.2 在执行 Time/DateTime#to_java
因此,当 JRuby 的 Java 集成看到 java.time.Instant
参数时,它将自动转换为 Ruby Time
(或 DateTime
) 对象。
for (old) JRuby 1.7 这显然行不通,但直接创建 java.time.Instant
类型确实应该行得通,因此请继续研究。很难说你有什么失败。