2013-08-23 33 views
1

我一直在如何在推土機上繪製泛型對象,並且在廣泛搜索後沒有找到任何東西來幫助我。在推土機上使用泛型進行深度繪製

我試圖映射一些對象,我寫了一些由別人創建的對象。我開始使用註釋,並看到類似的錯誤,所以我轉而使用映射文件。但是,它似乎沒有幫助。

下面是我試圖完成的一個例子。

public interface MyObject<T extends MyContent> { 
    T getData(); 
} 

public interface MyStaff extends MyContent { 
    Demo getDemo(); 
} 

public interface Demo { 
    Name getName(); 
} 

public interface Name { 
    String getFirstName(); 
    String setFirstName(String firstName); 
} 
<mapping> 
    <class-a>com.example.Staff</class-a> 
    <class-b>com.example.MyObject</class-b> 
    <field> 
     <a>firstName</a> 
     <b>data.demo.name.firstName</b> 
    </field> 
</mapping> 

下面是我看到的錯誤:

org.dozer.MappingException: No read or write method found for field (data.demo.name.firstName) in class (interface com.example.MyObject) 

我試過其他的排列(使用具體類而不是接口,例如),並沒有什麼作品。

回答

0

我能夠得到這個工作。看來這個問題是由於實現類不公開的緣故。看起來這可能是一個錯誤或者至少是一個增強。推土機應該通知您這個班級無法訪問,因爲建議該字段沒有找到是誤導性的。