Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-5089077

Regression: NPE when relative font sizes used in html

XMLWordPrintable

    • beta
    • x86
    • linux_redhat_9.0, windows_98, windows_xp

        --- Test.java ---
        import javax.swing.*;

        class Test {
            public static void main(String[] args) {
                String testHtml =
                    "<html><head><STYLE type='text/css'> p { font-size: lager } </STYLE></head>" +
                    "<body><p>test</p></body></html>";
                JEditorPane editor = new JEditorPane("text/html",testHtml);
                JFrame frame = new JFrame();
                frame.add(editor);
                frame.pack();
                frame.setVisible(true);
            }
        }

        ------

        java -showversion Test
        java version "1.5.0-rc"
        Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-rc-b63)
        Java HotSpot(TM) Client VM (build 1.5.0-rc-b63, mixed mode)

        Exception in thread "main" java.lang.NullPointerException
                at javax.swing.text.html.CSS$FontSize.getValue(CSS.java:1672)
                at javax.swing.text.html.CSS$FontSize.toStyleConstants(CSS.java:1805)
                at javax.swing.text.html.StyleSheet$ViewAttributeSet.getAttribute(StyleSheet.java:2630)
                at javax.swing.text.StyleConstants.getFontSize(StyleConstants.java:358)
                at javax.swing.text.html.CSS$FontSize.getValue(CSS.java:1678)
                at javax.swing.text.html.CSS$FontSize.toStyleConstants(CSS.java:1805)
                at javax.swing.text.html.StyleSheet$ViewAttributeSet.getAttribute(StyleSheet.java:2630)
                at javax.swing.text.StyleConstants.getFontSize(StyleConstants.java:358)
                at javax.swing.text.html.CSS$FontSize.getValue(CSS.java:1678)
                at javax.swing.text.html.CSS.getFontSize(CSS.java:614)
                at javax.swing.text.html.CSS.getFont(CSS.java:574)
                at javax.swing.text.html.StyleSheet.getFont(StyleSheet.java:867)
                at javax.swing.text.DefaultStyledDocument.getFont(DefaultStyledDocument.java:777)
                at javax.swing.text.LabelView.setPropertiesFromAttributes(LabelView.java:128)
                at javax.swing.text.html.InlineView.setPropertiesFromAttributes(InlineView.java:229)
                at javax.swing.text.LabelView.sync(LabelView.java:39)
                at javax.swing.text.LabelView.getFont(LabelView.java:189)
                at javax.swing.text.GlyphPainter1.sync(GlyphPainter1.java:194)
                at javax.swing.text.GlyphPainter1.getSpan(GlyphPainter1.java:42)
                at javax.swing.text.GlyphView.getPreferredSpan(GlyphView.java:536)
                at javax.swing.text.FlowView$LogicalView.getPreferredSpan(FlowView.java:692)
                at javax.swing.text.FlowView.calculateMinorAxisRequirements(FlowView.java:216)
                at javax.swing.text.html.ParagraphView.calculateMinorAxisRequirements(ParagraphView.java:128)
                at javax.swing.text.BoxView.checkRequests(BoxView.java:911)
                at javax.swing.text.BoxView.getMinimumSpan(BoxView.java:542)
                at javax.swing.text.html.ParagraphView.getMinimumSpan(ParagraphView.java:257)
                at javax.swing.text.BoxView.calculateMinorAxisRequirements(BoxView.java:879)
                at javax.swing.text.html.BlockView.calculateMinorAxisRequirements(BlockView.java:129)
                at javax.swing.text.BoxView.checkRequests(BoxView.java:911)
                at javax.swing.text.BoxView.getMinimumSpan(BoxView.java:542)
                at javax.swing.text.html.BlockView.getMinimumSpan(BlockView.java:362)
                at javax.swing.text.BoxView.calculateMinorAxisRequirements(BoxView.java:879)
                at javax.swing.text.html.BlockView.calculateMinorAxisRequirements(BlockView.java:129)
                at javax.swing.text.BoxView.checkRequests(BoxView.java:911)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:325)
                at javax.swing.text.BoxView.layout(BoxView.java:682)
                at javax.swing.text.BoxView.setSize(BoxView.java:379)
                at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1631)
                at javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:830)
                at javax.swing.JComponent.getPreferredSize(JComponent.java:1582)
                at javax.swing.JEditorPane.getPreferredSize(JEditorPane.java:1227)
                at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:690)
                at java.awt.Container.preferredSize(Container.java:1558)
                at java.awt.Container.getPreferredSize(Container.java:1543)
                at javax.swing.JComponent.getPreferredSize(JComponent.java:1584)
                at javax.swing.JRootPane$RootLayout.preferredLayoutSize(JRootPane.java:824)
                at java.awt.Container.preferredSize(Container.java:1558)
                at java.awt.Container.getPreferredSize(Container.java:1543)
                at javax.swing.JComponent.getPreferredSize(JComponent.java:1584)
                at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:690)
                at java.awt.Container.preferredSize(Container.java:1558)
                at java.awt.Container.getPreferredSize(Container.java:1543)
                at java.awt.Window.pack(Window.java:478)
                at Test.main(Test.java:11)

              idk Igor Kushnirskiy (Inactive)
              idk Igor Kushnirskiy (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: