harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Svetlana Samoilenko (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-64) java.nio.charset.Charset.forName(String name) does not throw UnsupportedCharsetException if invalid name starts with "x-"
Date Wed, 01 Feb 2006 07:53:03 GMT
java.nio.charset.Charset.forName(String name) does not throw UnsupportedCharsetException if
invalid name starts with "x-"
-------------------------------------------------------------------------------------------------------------------------

         Key: HARMONY-64
         URL: http://issues.apache.org/jira/browse/HARMONY-64
     Project: Harmony
        Type: Bug
  Components: Classlib  
    Reporter: Svetlana Samoilenko


According to j2se 1.4.2 specification for Charset forName(String charsetName)  the method
must throw UnsupportedCharsetException "if no support for the named charset is available in
this instance of the Java virtual machine". The method  does not throw exception if a unsupported
name started with "x-". For example, the method throws an exception for not supported name
"xyz", but does not for "x-yz".

Code to reproduce: 
import java.nio.charset.*; 

public class test2 { 
    public static void main (String[] args) {
        try{
            Charset ch=Charset.forName("x-yz");
            System.out.println("***BAD. UnsupportedCharsetException must be thrown instead
of creating "+ch); 
        } catch (UnsupportedCharsetException e) {  
            System.out.println("***OK. Expected UnsupportedCharsetException " + e); 
        }
    } 
}
Steps to Reproduce: 
1. Build Harmony (check-out on 2006-01-30) j2se subset as described in README.txt. 
2. Compile test2.java using BEA 1.4 javac 
> javac -d . test2.java 
3. Run java using compatible VM (J9) 
> java -showversion test2 


Output: 
C:\tmp>C:\jrockit-j2sdk1.4.2_04\bin\java.exe -showversion test2 
java version "1.4.2_04" 
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05) 
BEA WebLogic JRockit(TM) 1.4.2_04 JVM (build ari-31788-20040616-1132-win-ia32, Native Threads,
GC strategy: parallel) 
***OK. Expected UnsupportedCharsetException java.nio.charset.UnsupportedCharsetException:
x-yz

C:\tmp>C:\harmony\trunk\deploy\jre\bin\java -showversion test2 
(c) Copyright 1991, 2005 The Apache Software Foundation or its licensors, as applicable. 
***BAD. UnsupportedCharsetException must be thrown instead of creating Charset[x-yz]

Suggested junit test case:
------------------------ CharsetTest.java -------------------------------------------------

import java.nio.charset.*; 
import junit.framework.*; 

public class CharsetTest extends TestCase { 
    public static void main(String[] args) { 
        junit.textui.TestRunner.run(CharsetTest.class); 
    } 
    public void test_forName() { 
        try {
            Charset ch=Charset.forName("x-yz");
            fail("Assert 0: UnsupportedCharsetException must be thrown instead of creating:
" + ch); 
        } catch (UnsupportedCharsetException e) {
        }
   } 
}



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


Mime
View raw message