The following code snippet will construct a pane that displays HTML code. The HTML pane is then added to a scrollPane which is added to a generic JPanel. You can then add the generic JPanel to any dialog, JFrame, bean customizer or other user interface component:
javax.swing.JEditorPane htmlPane = new javax.swing.JEditorPane(); htmlPane.setEditable(false); htmlPane.setPreferredSize(new Dimension(width, height)); htmlPane.setContentType("text/html"); htmlPane.setText("<HTML><HEAD></HEAD><BODY>" + myObject.toHTML() + "</BODY></HTML>"); javax.swing.JScrollPane scrollPane = new javax.swing.JScrollPane(htmlPane); scrollPane.setPreferredSize(new Dimension(width, height)); mainPanel.add(scrollPane, BorderLayout.CENTER);Note that the toHTML() method is called on myObject to retrieve the HTML view of myObject. A better solution for this would be to return XML from myObject (myObject.toXML() for example) and then combine the XML with an XSLT style sheet to create the HTML to be rendered.
This was first published in March 2002