如何解决java.net.MalformedURLException:没有协议:?

时间:2014-04-10 15:37:37

标签: java html swing url jeditorpane

代码:

public SelectedMap() {
    initComponents();
    editorMap_pn.setEditable(false);
    try {
        editorMap_pn.setPage("<html><body>Hello</body></html>");
    } catch (IOException ex) {
        Logger.getLogger(SelectedMap.class.getName()).log(Level.SEVERE, null, ex);
    }
}

输出:

Tracker.UI.SelectedMap <init>
SEVERE: null
java.net.MalformedURLException: no protocol: <html><body>Hello</body></html>
    at java.net.URL.<init>(URL.java:583)
    at java.net.URL.<init>(URL.java:480)
    at java.net.URL.<init>(URL.java:429)
    at javax.swing.JEditorPane.setPage(JEditorPane.java:882)
    at Tracker.UI.SelectedMap.<init>(SelectedMap.java:33)

我想在Java应用程序中显示HTML页面,但不是URL。 我想输入HTML代码作为setter的输入并显示web输出。

1 个答案:

答案 0 :(得分:2)

documentation for JEditorPane.setPage(String)告诉我们:

  

设置当前显示的 URL

所以:

editorMap_pn.setPage("<html><body>Hello</body></html>");

应该是:

editorMap_pn.setText("<html><body>Hello</body></html>");

请注意,您可能还需要设置内容类型且不可编辑。