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

Regression 1.5: NPE when trying to show an html document

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • 5.0
    • 5.0
    • client-libs
    • None
    • b28
    • generic
    • generic

      here's the stack trace:

      to reproduce see the test below

      java.lang.NullPointerException
              at javax.swing.text.CompositeView.replace(CompositeView.java:200)
              at javax.swing.text.BoxView.replace(BoxView.java:164)
              at javax.swing.text.FlowView$FlowStrategy.adjustRow(FlowView.java:570)
              at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:501)
              at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:408)
              at javax.swing.text.FlowView.layout(FlowView.java:182)
              at javax.swing.text.BoxView.setSize(BoxView.java:379)
              at javax.swing.text.BoxView.updateChildSizes(BoxView.java:348)
              at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:330)
              at javax.swing.text.BoxView.layout(BoxView.java:682)
              at javax.swing.text.BoxView.setSize(BoxView.java:379)
              at javax.swing.text.BoxView.updateChildSizes(BoxView.java:348)
              at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:330)
              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:
      1618)
              at javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:
      816)
              at javax.swing.JComponent.getPreferredSize(JComponent.java:1523)
              at javax.swing.JEditorPane.getPreferredSize(JEditorPane.java:1220)
              at javax.swing.text.JTextComponent.getPreferredScrollableViewportSize(JT
      extComponent.java:1696)
              at javax.swing.ViewportLayout.preferredLayoutSize(ViewportLayout.java:75
      )
              at java.awt.Container.preferredSize(Container.java:1544)
              at java.awt.Container.getPreferredSize(Container.java:1530)
              at javax.swing.JComponent.getPreferredSize(JComponent.java:1525)
              at javax.swing.ScrollPaneLayout.preferredLayoutSize(ScrollPaneLayout.jav
      a:475)
              at java.awt.Container.preferredSize(Container.java:1544)
              at java.awt.Container.getPreferredSize(Container.java:1530)
              at javax.swing.JComponent.getPreferredSize(JComponent.java:1525)
              at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:689)
               at java.awt.Container.preferredSize(Container.java:1544)
              at java.awt.Container.getPreferredSize(Container.java:1530)
              at java.awt.Window.pack(Window.java:457)
              at Test$1.run(Test.java:25)
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:201)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
              at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
      read.java:214)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
      ad.java:163)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
       

      ========== Test.java ============

      import java.io.*;

      import javax.swing.*;
      import javax.swing.text.*;
      import javax.swing.text.html.*;

      public class Test {

          public static void main(String[] args) throws Exception {

              final String text =
                  "<HTML><BODY><DL><DT><DD>something</DD></DL><HR></BODY></HTML>";
                   
              final JFrame f = new JFrame();
              final JEditorPane jep = new JEditorPane();
              jep.setEditorKit(new HTMLEditorKit());
              jep.setEditable(false);
              jep.setContentType("text/html");
              f.getContentPane().add(new JScrollPane(jep));
                  SwingUtilities.invokeLater(
                       new Runnable() {
                           public void run() {
                               jep.setText(text);
                           }
                       });
             f.pack();
             f.setVisible(true);
          }

      }
       ============end Test.java =================

            sdvsunw Sdv Sdv (Inactive)
            sdvsunw Sdv Sdv (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: