adesh
adesh

Reputation: 1187

Show HTML file in JEditorPane

I am working on a Swing application in which I have to show HTML files.

I am using JEditorPane control for it. It is showing the content of HTML file but not in the same format as originally in the actual HTML file.

JEditorPane does not support the object element. Rather than loading the object file its just showing ?.

Is there any other inbuilt control in Swing to browse the HTML file rather than JEditorPane?

I am using the following code:

JEditorPane HtmlPane= new JEditorPane();
File file1= new File("path of the file");
HtmlPane.setContentType("text/html");
HtmlPane.setEditable(false);
HtmlPane.setPage(file1.toURI().toURL());
JScrollPane jsp=new JScrollPane(HtmlPane);

Upvotes: 4

Views: 9821

Answers (3)

Anis Cherid
Anis Cherid

Reputation: 1

To render html content from local file, the local file's extension must be ".html". JEditor Pane will render "content.html" but will not render "content.txt".

Upvotes: -1

Andrew Thompson
Andrew Thompson

Reputation: 168825

Your best bet for more advanced HTML rendering in core Java is to use the JavaFX based WebView component as described in Adding HTML Content to JavaFX Applications. It supports HTML5, but I've not actually played with it, so I cannot say how well it renders HTML.

Note that Java FX is effectively an alternative to Swing, but AFAIU Java FX components can be embedded in Swing GUIs.

Upvotes: 4

trashgod
trashgod

Reputation: 205785

Support for HTML in Swing Components is limited to 3.2, predating the <object> tag. You might be able to use a HyperlinkListener, illustrated here, in conjunction with Desktop#browse(). See also this example.

Upvotes: 2

Related Questions