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

search yields NullPointerException and unstable search hit hiliting

    XMLWordPrintable

Details

    • 08
    • generic, sparc
    • solaris_8, solaris_9

    Backports

      Description

        Doing a search in JavaHelp yields exceptions and the search hit hiliting is
        inconsistent.

        Sometimes the exception is this:
        java.lang.NullPointerException
                at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:482)
                at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:399)
                at javax.swing.text.FlowView.layout(FlowView.java:185)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:
        1536)
                at javax.swing.plaf.basic.BasicTextUI.damageRange(BasicTextUI.java:1001)
                at javax.swing.plaf.basic.BasicTextUI.damageRange(BasicTextUI.java:982)
                at javax.swing.text.DefaultHighlighter.addHighlight(DefaultHighlighter.j
        ava:110)
                at javax.help.plaf.basic.BasicContentViewerUI.highlightsChanged(BasicCon
        tentViewerUI.java:450)
                at javax.help.plaf.basic.BasicContentViewerUI.propertyChange(BasicConten
        tViewerUI.java:286)
                at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(Swing
        PropertyChangeSupport.java:267)
                at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(Swing
        PropertyChangeSupport.java:235)
                at javax.swing.JComponent.firePropertyChange(JComponent.java:3815)
                at javax.swing.JEditorPane$PageLoader.run(JEditorPane.java:576)

        Other times it's this:
        java.lang.ArrayIndexOutOfBoundsException
                at java.lang.System.arraycopy(Native Method)
                at javax.swing.text.BoxView.updateLayoutArray(BoxView.java:200)
                at javax.swing.text.BoxView.replace(BoxView.java:171)
                at javax.swing.text.View.append(View.java:427)
                at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:395)
                at javax.swing.text.FlowView.layout(FlowView.java:185)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.text.BoxView.updateChildSizes(BoxView.java:351)
                at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:333)
                at javax.swing.text.BoxView.layout(BoxView.java:685)
                at javax.swing.text.BoxView.setSize(BoxView.java:382)
                at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1536)
                at javax.swing.plaf.basic.BasicTextUI.damageRange(BasicTextUI.java:1001)
                at javax.swing.plaf.basic.BasicTextUI.damageRange(BasicTextUI.java:982)
                at javax.swing.text.DefaultHighlighter.addHighlight(DefaultHighlighter.java:110)
                at javax.help.plaf.basic.BasicContentViewerUI.highlightsChanged(BasicContentViewerUI.java:450)
                at javax.help.plaf.basic.BasicContentViewerUI.propertyChange(BasicContentViewerUI.java:286)
                at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:267)
                at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:235)
                at javax.swing.JComponent.firePropertyChange(JComponent.java:3815)
                at javax.swing.JEditorPane$PageLoader.run(JEditorPane.java:576)


        At times if you do enough searches, the help viewer will no longer render anything, but
        will simply result in exception dumps to stdout. I don't have a reproducable test case
        for this, but I have seen it several times.

        Additionally, the search hiliting is inconsistent. Do a search, and a page will come up but
        not all search hits are hilited. Repeat the search by simply clicking in the search entry
        text field and hitting the Return key and all hits are hilited. Now, click the down arrow
        on the scroll bar and you will see many of those hilites will disappear.

        All this behavior can be seen when running the Solaris Management Console on build 47 or greater.
        To reproduce:
           - run /usr/sadm/bin/smc
           - click on the Devices and Hardware folder
           - click on Serial Ports, and login
           - invoke Help->Content to bring up the viewer
           - search for "modem"

        You can load more helpsets by clicking on any tool in any other folder, say "Processes"
        under the "System Status" folder. Do a search for "Processes" and you'll see the same
        hiliting inconsistency. In general, all the behavior described here can be seen by
        simply exercising the search capability with any of the tools loaded.

        If you need access to any specific helpset, the files are included in the jar file for that
        tool under /usr/sadm/lib. For example, the Serial Port jar is located at
        /usr/sadm/lib/serialmgr/VSerialMgr.jar While the jar contains everything used by the tool,
        the helpset files can be extracted from the "helpset" paths in the jar.

        =============================================================================

        Verified on Solaris 9 with the following config details on command uname -a
        SunOS vagator 5.9 s81_53 sun4u sparc SUNW,Ultra-5_10

        ###@###.### 2002-01-15
        ==============================================================================

        Attachments

          Issue Links

            Activity

              People

                shickeysunw Shannon Hickey (Inactive)
                duke J. Duke
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: