0 Replies Latest reply: May 15, 2009 8:35 AM by 843810 RSS

    Help only displays the frame in Solaris 10, update 6

    843810
      I have a help application that has been running fine since Solaris 8. It works in Solaris 10, update 1, but not in update 6. Only an empty help frame is displayed. My JRE is 1.6.0_05-b13, and I am using help 1.1.13. I suspect that replacing the default HelpUI with my own subclass has stopped working. My application has this line of code which is used to replace the default HelpUI:

      UIManager.getDefaults().put("HelpUI", "HelpUIWithClose");

      The users wanted a close button, so HelpUIWithClose is subclassed from BasicHelpUI, and a big close button is added on the toolbar. This has been working for years. Before and after this line of code are two print statements that get the toString value of the UIDefaults HelpUI object. The results are:
      (before)
      javax.help.plaf.basic.BasicHelpUI
      (after)
      HelpUIWithClose

      I am only guessing at the problem because of all of the "Unknown Source" values in the trace below. If I comment out the UIManager line above that replaces HelpUI with HelpUIWithClose, the help functions normally, but of course it is missing the close button added by HelpUIWithClose.

      An alternate question might be how to add a close button to the toolbar of help?

      I get a very long trace when this fails. I will post it at the end of this email. Any ideas on what is wrong?
      Thanks,
      Herb Miller

      UIDefaults.getUI() failed: no ComponentUI class for: javax.help.JHelp[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=]
      java.lang.Error
      at javax.swing.UIDefaults.getUIError(Unknown Source)
      at javax.swing.MultiUIDefaults.getUIError(Unknown Source)
      at javax.swing.UIDefaults.getUI(Unknown Source)
      at javax.swing.UIManager.getUI(Unknown Source)
      at javax.help.JHelp.updateUI(JHelp.java:299)
      at javax.help.JHelp.<init>(JHelp.java:121)
      at javax.help.WindowPresentation.createJHelp(WindowPresentation.java:843)
      at javax.help.WindowPresentation.createHelpWindow(WindowPresentation.java:879)
      at javax.help.WindowPresentation.setDisplayed(WindowPresentation.java:346)
      at javax.help.DefaultHelpBroker.setDisplayed(DefaultHelpBroker.java:178)
      at javax.help.CSH.displayHelp(CSH.java:749)
      at javax.help.CSH.access$200(CSH.java:80)
      at javax.help.CSH$DisplayHelpFromSource.actionPerformed(CSH.java:1668)
      at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
      at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
      at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
      at javax.swing.AbstractButton.doClick(Unknown Source)
      at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
      at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
      at java.awt.Component.processMouseEvent(Unknown Source)
      at javax.swing.JComponent.processMouseEvent(Unknown Source)
      at java.awt.Component.processEvent(Unknown Source)
      at java.awt.Container.processEvent(Unknown Source)
      at java.awt.Component.dispatchEventImpl(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
      at java.awt.Container.dispatchEventImpl(Unknown Source)
      at java.awt.Window.dispatchEventImpl(Unknown Source)
      at java.awt.Component.dispatchEvent(Unknown Source)
      at java.awt.EventQueue.dispatchEvent(Unknown Source)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
      at java.awt.EventDispatchThread.run(Unknown Source)