gpt4 book ai didi

javafx - Java "Could Not Serialize the Data"

转载 作者:行者123 更新时间:2023-12-01 23:08:10 24 4
gpt4 key购买 nike

我正在尝试让我的剪贴板通过拖放操作接收一些自定义数据。自定义数据是另一种java类型。这种其他类型确实实现了可序列化,所以我真的不确定为什么这不起作用。任何想法表示赞赏!

imgView.setOnDragDetected(new EventHandler<MouseEvent>() {
public void handle(MouseEvent event) {
ClipboardContent content = new ClipboardContent();
content.put(dataFormat, RHSIconizedToken.this);
Dragboard db = imgView.startDragAndDrop(TransferMode.ANY);
db.setContent(content);
event.consume();
}
});

为了稍后检索此对象,我正在使用:

RHSIconizedToken replacementRHSiToken = (RHSIconizedToken) db.getContent(RHSIconizedToken.getDataFormat());

我收到以下错误,但 RHSIconizedToken 确实实现了 Serializable

java.lang.IllegalArgumentException: Could not serialize the data

GetDataFormat 返回在第一个代码示例中的 put 参数中使用的 DataFormat 对象。

最佳答案

那是因为你的对象是不可序列化的。

的确,并不是因为它实现了Serializable,所以它是Serializable。

深入了解异常,你可能会发现类似这样的东西

Caused by: java.io.NotSerializableException: javafx.beans.property.SimpleObjectProperty

也许让一些字段transient会有所帮助。

关于javafx - Java "Could Not Serialize the Data",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16331204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com