[Scilab-users] Problem using jarray (Scilab 5.5.1)

Joo Cat joodlink at hotmail.com
Mon Jan 26 06:06:00 CET 2015


Bug reported and the workaround works. Thanks!

Date: Fri, 23 Jan 2015 08:52:09 +0100
From: calixte.denizet at scilab-enterprises.com
To: users at lists.scilab.org
Subject: Re: [Scilab-users] Problem using jarray (Scilab 5.5.1)


  
    
  
  
    On 23/01/2015 07:39, Joo Cat wrote:

    
    
      
        
        I was attempting to create a jagged array in
          Scilab to be sent to a Java instance. At first, I created a
          Double class array and had no problems:

          a = jarray("java.lang.Double",3,1)

          a(1) = [1 2 3]

          a(2) = [4 5]

          a(3) = 6

          

          Next, I attempted to create a primitive double array instead:

          b = jarray("double",3,1)

          b(1) = [1 2 3]

          b(2) = [4 5]

          b(3) = 6

          I had no problem with the first few lines. The problem occured
          at b(3) = 6 when I attempted to assign a single element value.
          I got this error:

          !--error 999 

          %s_i__EObj: An error occurred: Exception when calling Java
          method : Array [[D at dbe4e5 cannot contain object which is an
          instance of class java.lang.Double

           at
          org.scilab.modules.external_objects_java.ScilabJavaArray.set(Unknown
          Source)

           at
          org.scilab.modules.external_objects_java.ScilabJavaObject.insert(Unknown
          Source)

          Array [[D at dbe4e5 cannot contain object which is an instance of
          class java.lang.Double

           at
          org.scilab.modules.external_objects_java.ScilabJavaArray.set(Unknown
          Source)

           at
          org.scilab.modules.external_objects_java.ScilabJavaObject.insert(Unknown
          Source)

          

          It looks like it considers scalar values as Double type and
          not the primitive double. Is there a way to overcome this?
          Thanks!

          

        
      
    
    

    Hi,

    

    It is a bug so please report it at bugzilla.scilab.org.

    

    A temporary workaround:

    c=jarray("double",1);c(1)=6;

    b = jarray("double",3,1)

    b(3)=c

    

    Best regards

    

    Calixte

    

    
      
        

        
      
      

      
      

      _______________________________________________
users mailing list
users at lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users

    
    

    

    -- 
Calixte Denizet
Software Development Engineer
-----------------------------------------------------------
Scilab Enterprises
143bis rue Yves Le Coz - 78000 Versailles, France
http://www.scilab-enterprises.com
  


_______________________________________________
users mailing list
users at lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20150126/c539492d/attachment.htm>


More information about the users mailing list