You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vasily Zakharov (JIRA)" <ji...@apache.org> on 2007/03/21 03:49:32 UTC
[jira] Commented: (HARMONY-3453) [classlib][swing]
JEditorPane.registerEditorKitForContentType(String, String, null) doesn't
throw NPE
[ https://issues.apache.org/jira/browse/HARMONY-3453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12482635 ]
Vasily Zakharov commented on HARMONY-3453:
------------------------------------------
The test returns null on Harmony in all cases because another bug exists in Harmony, see HARMONY-3454.
However, that issue is not directly related to this one.
> [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
> Priority: Minor
>
> 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.