2015-10-25 12 views
5

sto cercando di simulare sotto la classe.JAVA: java.lang.IllegalArgumentException: Can not sottoclasse della classe di classe finale [Lcom.package.testEntityDO;

public class testEntityDO extends BasetestDO { 
    private String entityType; 
    private testCapabilityDO[] capabilities; 
    private testEntityDO[] testDOs; 
    public String getEntityType() { 
     return entityType; 
    } 
    public void setEntityType(String entityType) { 
     this.entityType = entityType; 
    } 
    public testCapabilityDO[] getCapabilities() { 
     return capabilities; 
    } 
    public void setCapabilities(testCapabilityDO[] capabilities) { 
     this.capabilities = capabilities; 
    } 
    public TestEntityDO[] getTestPortDOs() { 
     return testPortDOs; 
    } 
    public void setTestPortDOs(TestEntityDO[] testPortDOs) { 
     this.testPortDOs = testPortDOs; 
    } 
} 

Codice da beffeggiare:

TestEntityDO[] testEntityMock = testmethod.getTestEntityDO(); 

Mocking ho provato: trace

TestEntityDO[] testEntityDOMock = PowerMock.createMock(TestEntityDO[].class); // exception is generating at this point 
EasyMock.expect(testmethod.getTestEntityDO()).andReturn(testEntityDOMock); 

eccezione:

java.lang.IllegalArgumentException: Cannot subclass final class class [Lcom.package.TestEntityDO; 
    at net.sf.cglib.proxy.Enhancer.generateClass(Enhancer.java:446) 
    at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25) 
    at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:216) 
    at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377) 
    at net.sf.cglib.proxy.Enhancer.createClass(Enhancer.java:317) 

classe non è una classe finale. ancora l'eccezione è indicata come classe finale. per favore aiutami a risolvere questo problema.

risposta

5

Si sta tentando di creare una sottoclasse/simulazione di un array di TestEntityDO. Gli array sono definitivi.

+0

Quindi, qual è il modo giusto per prendere in giro. in questo scenario? – Manjunath

+0

Un array di oggetti derisi. Non una serie di oggetti beffeggiati. – Kayaman

+0

ok .. cosa dovrei cambiare ora? per lavorare? finta quindi Arrays.class? per favore aiuto – Manjunath

Problemi correlati