Embedded problem with callMethod
--------------------------------

                 Key: JRUBY-4552
                 URL: http://jira.codehaus.org/browse/JRUBY-4552
             Project: JRuby
          Issue Type: Bug
          Components: Core Classes/Modules
         Environment: Windows XP 64, JDK 1.6.0.18
            Reporter: Alex K
            Priority: Blocker
             Fix For: JRuby 1.4
         Attachments: JRubyTest.java

      ScriptingContainer l_container = new 
ScriptingContainer(LocalContextScope.SINGLETON, 
LocalVariableBehavior.TRANSIENT);
 
        l_container.runScriptlet("class Driver \n" +
                                " def test= value \n" +
                                " @test = value \n" +
                                " end \n" +
                                " def test \n" +
                                " @test \n" +
                                " end \n" +
                                "end \n ");
 
 
        RubyObject l_obj1 = (RubyObject)l_container.runScriptlet("Driver.new");
        RubyObject l_obj2 = (RubyObject)l_container.runScriptlet("Driver.new");
 
        l_container.callMethod(l_obj1, "test=", "obj1", Object.class );
        l_container.callMethod(l_obj2, "test=", "obj2", Object.class );
 
 
        System.out.println( "1) obj1=" + l_obj1.callMethod("test"));
        System.out.println( "1) obj2=" + l_obj2.callMethod("test"));
        System.out.println( "2) obj1=" + l_obj1.callMethod("test"));
        System.out.println( "2) obj2=" + l_obj2.callMethod("test"));
//here it starts to break
        System.out.println( "3) obj1=" + l_container.callMethod(l_obj1, "test", 
String.class));
        System.out.println( "3) obj2=" + l_container.callMethod(l_obj2, "test", 
String.class));
        System.out.println( "4) obj1=" + l_obj1.callMethod("test"));
        System.out.println( "4) obj2=" + l_obj2.callMethod("test"));
 
 
produces
 
1) obj1=obj1
1) obj2=obj2
2) obj1=obj1
2) obj2=obj2
3) obj1=obj2            <- here it starts to break
3) obj2=obj2
4) obj1=obj2
4) obj2=obj2

-- 
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


Reply via email to