become_java! / RubyClass.reify regression -----------------------------------------
Key: JRUBY-5364 URL: http://jira.codehaus.org/browse/JRUBY-5364 Project: JRuby Issue Type: Bug Components: Compiler Affects Versions: JRuby 1.6RC1 Environment: The TorqueBox rspec/arquillian tests executed on OSX Reporter: bob mcwhirter With jruby 1.5.6, RubyClass#reify (via become_java!) worked to create bonafide java classes. In 1.6.0.RC1 an NPE now results from executing the same code path. {noformat} java.lang.NullPointerException org.jruby.RubyClass.reify(RubyClass.java:1169) org.jruby.RubyClass.reify(RubyClass.java:1146) org.jruby.RubyJRuby$JRubyClassExtensions.become_java_bang(RubyJRuby.java:488) org.jruby.RubyJRuby$JRubyClassExtensions$s_method_0_1$RUBYINVOKER$become_java_bang.call(org/jruby/RubyJRuby$JRubyClassExtensions$s_method_0_1$RUBYINVOKER$become_java_bang.gen:65535) org.jruby.internal.runtime.methods.JavaMethod$JavaMethodN.call(JavaMethod.java:626) org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:196) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:262) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:105) org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:61) {noformat} The code calling become_java! is within our RSpec/Arquillian integration, which requires Java classes with static methods that have annotations attached. We take an RSpec ExampleGroup, synthesize some static methods, annotate, call become_java! and hand to Arquillian. Our code is here, line 65 being the code that now fails under 1.6.0.RC1 with the above NPE: https://github.com/torquebox/torquebox/blob/master/integration-tests/spec/container.rb -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email