You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vladimir Ivanov (JIRA)" <ji...@apache.org> on 2006/08/01 07:23:17 UTC

[jira] Created: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

[classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
------------------------------------------------------------------------------------------

                 Key: HARMONY-1021
                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
             Project: Harmony
          Issue Type: Bug
          Components: Classlib
            Reporter: Vladimir Ivanov


J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
"Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."

When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.

==================== test.java ======================
import java.util.*;
import javax.naming.*;

public class test {
    public static void main(String[] argv) throws Exception {
        CompoundName cmp = new CompoundName("aa", new Properties());
        try {       
            cmp.add(11, null);
            System.out.println("Test failed");
        } catch (InvalidNameException e) {
            System.out.println("Test passed: " + e);
        } catch (Throwable e) {
            System.out.println("unexpected exception: " + e);
            e.printStackTrace();
        }

        try {       
            cmp.add(null);
            System.out.println("Test failed");
        } catch (InvalidNameException e) {
            System.out.println("Test passed: " + e);
        } catch (Throwable e) {
            System.out.println("unexpected exception: " + e);
            e.printStackTrace();
        }
    }
}
=================================================

Output:
C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))

Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
Test passed: javax.naming.InvalidNameException: A flat name can only have a single component

C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
java version 1.5 (subset)

(c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
unexpected exception: java.lang.ArrayIndexOutOfBoundsException
java.lang.ArrayIndexOutOfBoundsException
        at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
        at javax.naming.CompoundName.add(CompoundName.java:681)
        at test.main(test.java:8)
Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Resolved: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

Posted by "Mikhail Loenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1021?page=all ]

Mikhail Loenko resolved HARMONY-1021.
-------------------------------------

    Resolution: Fixed

Applied in revision 427572
Vladimir please check it was done as expected


> [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
> ------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1021
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Mikhail Loenko
>         Attachments: CompoundName.patch
>
>
> J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
> "Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."
> When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.
> ==================== test.java ======================
> import java.util.*;
> import javax.naming.*;
> public class test {
>     public static void main(String[] argv) throws Exception {
>         CompoundName cmp = new CompoundName("aa", new Properties());
>         try {       
>             cmp.add(11, null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>         try {       
>             cmp.add(null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>     }
> }
> =================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
> Test passed: javax.naming.InvalidNameException: A flat name can only have a single component
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> unexpected exception: java.lang.ArrayIndexOutOfBoundsException
> java.lang.ArrayIndexOutOfBoundsException
>         at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
>         at javax.naming.CompoundName.add(CompoundName.java:681)
>         at test.main(test.java:8)
> Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1021?page=all ]

Vladimir Ivanov updated HARMONY-1021:
-------------------------------------

    Attachment: CompoundName.patch

patch

> [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
> ------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1021
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Attachments: CompoundName.patch
>
>
> J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
> "Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."
> When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.
> ==================== test.java ======================
> import java.util.*;
> import javax.naming.*;
> public class test {
>     public static void main(String[] argv) throws Exception {
>         CompoundName cmp = new CompoundName("aa", new Properties());
>         try {       
>             cmp.add(11, null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>         try {       
>             cmp.add(null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>     }
> }
> =================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
> Test passed: javax.naming.InvalidNameException: A flat name can only have a single component
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> unexpected exception: java.lang.ArrayIndexOutOfBoundsException
> java.lang.ArrayIndexOutOfBoundsException
>         at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
>         at javax.naming.CompoundName.add(CompoundName.java:681)
>         at test.main(test.java:8)
> Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-1021?page=comments#action_12426114 ] 
            
Vladimir Ivanov commented on HARMONY-1021:
------------------------------------------

verified, thanks

> [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
> ------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1021
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Mikhail Loenko
>         Attachments: CompoundName.patch
>
>
> J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
> "Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."
> When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.
> ==================== test.java ======================
> import java.util.*;
> import javax.naming.*;
> public class test {
>     public static void main(String[] argv) throws Exception {
>         CompoundName cmp = new CompoundName("aa", new Properties());
>         try {       
>             cmp.add(11, null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>         try {       
>             cmp.add(null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>     }
> }
> =================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
> Test passed: javax.naming.InvalidNameException: A flat name can only have a single component
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> unexpected exception: java.lang.ArrayIndexOutOfBoundsException
> java.lang.ArrayIndexOutOfBoundsException
>         at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
>         at javax.naming.CompoundName.add(CompoundName.java:681)
>         at test.main(test.java:8)
> Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

Posted by "Mikhail Loenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1021?page=all ]

Mikhail Loenko closed HARMONY-1021.
-----------------------------------


> [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
> ------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1021
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Mikhail Loenko
>         Attachments: CompoundName.patch
>
>
> J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
> "Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."
> When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.
> ==================== test.java ======================
> import java.util.*;
> import javax.naming.*;
> public class test {
>     public static void main(String[] argv) throws Exception {
>         CompoundName cmp = new CompoundName("aa", new Properties());
>         try {       
>             cmp.add(11, null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>         try {       
>             cmp.add(null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>     }
> }
> =================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
> Test passed: javax.naming.InvalidNameException: A flat name can only have a single component
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> unexpected exception: java.lang.ArrayIndexOutOfBoundsException
> java.lang.ArrayIndexOutOfBoundsException
>         at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
>         at javax.naming.CompoundName.add(CompoundName.java:681)
>         at test.main(test.java:8)
> Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Assigned: (HARMONY-1021) [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)

Posted by "Mikhail Loenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1021?page=all ]

Mikhail Loenko reassigned HARMONY-1021:
---------------------------------------

    Assignee: Mikhail Loenko

> [classlib][jndi] unexpected ArrayIndexOutOfBoundsException for CompoundName.add(int, null)
> ------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1021
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1021
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Mikhail Loenko
>         Attachments: CompoundName.patch
>
>
> J2SE API specification for javax.naming.CompoundName says for methods add(int posn, String comp) and add(String comp):
> "Throws: InvalidNameException - If adding comp at the specified position would violate the compound name's syntax."
> When component to add is null then RI throws InvalidNameException but Harmony does not throw any exception for add(String) method and throws ArrayIndexOutOfBoundsException for add(int, String) method.
> ==================== test.java ======================
> import java.util.*;
> import javax.naming.*;
> public class test {
>     public static void main(String[] argv) throws Exception {
>         CompoundName cmp = new CompoundName("aa", new Properties());
>         try {       
>             cmp.add(11, null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>         try {       
>             cmp.add(null);
>             System.out.println("Test failed");
>         } catch (InvalidNameException e) {
>             System.out.println("Test passed: " + e);
>         } catch (Throwable e) {
>             System.out.println("unexpected exception: " + e);
>             e.printStackTrace();
>         }
>     }
> }
> =================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> Test passed: javax.naming.InvalidNameException: A flat name can only zero or one component
> Test passed: javax.naming.InvalidNameException: A flat name can only have a single component
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> unexpected exception: java.lang.ArrayIndexOutOfBoundsException
> java.lang.ArrayIndexOutOfBoundsException
>         at javax.naming.CompoundName.validateIndex(CompoundName.java:630)
>         at javax.naming.CompoundName.add(CompoundName.java:681)
>         at test.main(test.java:8)
> Test failed

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira