harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vasily Zakharov (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-3453) [classlib][swing] JEditorPane.registerEditorKitForContentType(String, String, null) doesn't throw NPE
Date Wed, 21 Mar 2007 00:44:32 GMT
[classlib][swing] JEditorPane.registerEditorKitForContentType(String, String, null) doesn't
throw NPE
-----------------------------------------------------------------------------------------------------

                 Key: HARMONY-3453
                 URL: https://issues.apache.org/jira/browse/HARMONY-3453
             Project: Harmony
          Issue Type: Bug
          Components: Classlib, Non-bug differences from RI
            Reporter: Vasily Zakharov


Consider the following test:

import javax.swing.JEditorPane;

public class Test {
    public static void main(String args[]) throws Exception {
        System.out.println(JEditorPane.createEditorKitForContentType("testContentType1"));
        try {
            JEditorPane.registerEditorKitForContentType("testContentType1", "MyEditorKit",
null);
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(JEditorPane.createEditorKitForContentType("testContentType1"));
        JEditorPane.registerEditorKitForContentType("testContentType2", "MyEditorKit");
        System.out.println(JEditorPane.createEditorKitForContentType("testContentType2"));
    }
}

public class MyEditorKit extends javax.swing.text.DefaultEditorKit {
}

Output on RI:

null
java.lang.NullPointerException
        at java.util.Hashtable.put(Unknown Source)
        at javax.swing.JEditorPane.registerEditorKitForContentType(Unknown Source)
        at TestNPE.main(TestNPE.java:8)
MyEditorKit@1a46e30
MyEditorKit@3e25a5

Output on Harmony:

null
null
null

The specification says nothing about passing null classloader.

The NPE occurs on RI, and doesn't occur on Harmony, it seems that RI uses Hashtable (that
doesn't permit null keys/vaues) to store registered classloaders, and Harmony uses ArrayList.

Also, as one may see, RI, besides throwing NPE, also registers the specified content type
anyway (compare createEditorKitForContentType results before and after registration attempt).
In my opinion, this behaviour is clearly a bug in RI. So my suggestion is to consider this
issue a non-bug difference.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message