好的,我正在尝试创建一个连接到服务器的浏览器,当用户输入一个 url 时,浏览器将该 url 发送到服务器。然后,服务器在 JEditorPane 中打开 url,然后使用 getDocument() 方法尝试通过 ObjectOutputStream 将该文档发送回客户端。不幸的是,我无法弄清楚这一点,是无法通过 objectoutputstream 发送文档还是我做错了什么?
这是我正在使用的代码:
设置页面并获取文档的方法:
url = (String) input.readObject();
window.setPage(url);
doc = window.getDocument();
sendDoc(doc);
通过 objectoutputstream 发送 Document 的方法:
try {
output.writeObject(doc); // no compiling errors...
output.flush();
} catch (Exception e) { }
我得到的错误:
java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException:
javax.swing.text.html.CSS$Value is not serializable as a value in an AttributeSet
...
at DawgsCodeBrowser.whileConnected(DawgsCodeBrowser.java:101)
at DawgsCodeBrowser.Run(DawgsCodeBrowser.java:71)
at StartBrowser.main(StartBrowser.java:8)
Caused by: java.io.NotSerializableException:
javax.swing.text.html.CSS$Value is not serializable as a value in an AttributeSet
...
at DawgsCodeServer.sendDoc(DawgsCodeServer.java:154)
at DawgsCodeServer.whileConnected(DawgsCodeServer.java:100)
at DawgsCodeServer.Run(DawgsCodeServer.java:59)
at StartServer.main(StartServer.java:11)
抱歉,错误信息很长,我取出了一些,所以它不会那么长...