Java 将TableViewer与由其他几个模型扩展的模型绑定

Java 将TableViewer与由其他几个模型扩展的模型绑定,java,data-binding,swt,jface,eclipse-databinding,Java,Data Binding,Swt,Jface,Eclipse Databinding,我有一个类File,它被另外两个类CopyFile和DeleteFile扩展 class File { private String filePath; /** Setters and getters **/ } class CopyFile { private String destinationPath; /**setters and getters**/ } class DeleteFile { } 现在我尝试将其绑定到表查看器: ViewerSup

我有一个类
File
,它被另外两个类
CopyFile
DeleteFile
扩展

class File {
    private String filePath;
    /** Setters and getters **/
}

class CopyFile {
    private String destinationPath;
    /**setters and getters**/
}

class DeleteFile {
} 
现在我尝试将其绑定到表查看器:

ViewerSupport.bind(tableViewer, new WritableList(realm,
            fileDetailsList, File.class),PojoProperties.values(File.class,
                    new String[] { "filePath","destinationPath"}));
当文件是
CopyFile
的实例时,我想显示destinationPath;当文件是
DeleteFile
的实例时,我想显示
null

class File {
    private String filePath;
    /** Setters and getters **/
}

class CopyFile {
    private String destinationPath;
    /**setters and getters**/
}

class DeleteFile {
} 
但当我运行此程序时,它会抛出一个错误:

在类文件中找不到名为destinationPath的属性


请帮我解决这个问题,并告诉我如何在继承的情况下实现数据绑定。

请注意,当您绑定
File.class
时,将找不到该属性,因为它使用反射,并且该属性属于
CopyFile.class
。绑定是用bean或pojo完成的,以便观察它们的细节