Hi,
The code below is giving me a class cast error. Can anyone spot the issue? I believe the code was originally written and worked for 11g but not here.
It seems to be the line I've highlighted with the //************* but I don't see an issue with it....then again I'm not an expert in Java/Groovy.
Thanks in advance.
AJ.
java.lang.ClassCastException: oracle.odi.domain.runtime.scenario.OdiScenario cannot be cast to com.sunopsis.dwg.dbobj.SnpScen
Rolled back
Script exited.
import oracle.odi.core.persistence.transaction.support.DefaultTransactionDefinition
import oracle.odi.domain.runtime.scenario.OdiScenario
import oracle.odi.domain.runtime.scenario.finder.IOdiScenarioFinder
import oracle.odi.generation.IOdiScenarioGenerator
import oracle.odi.generation.support.OdiScenarioGeneratorImpl
import oracle.odi.domain.mapping.Mapping
import oracle.odi.domain.mapping.finder.IMappingFinder
def genScenario(prj, fold){
txnDef = new DefaultTransactionDefinition()
tm = odiInstance.getTransactionManager()
tme = odiInstance.getTransactionalEntityManager()
txnStatus = tm.getTransaction(txnDef)
try
{
for (Mapping odiMappingCollection : ((IMappingFinder)tme.getFinder(Mapping.class)).findByProject(prj,fold))
{
OdiScenarioGeneratorImpl sgen = new OdiScenarioGeneratorImpl(odiInstance);
String scn_name = odiMappingCollection.getName()+"_PHYSICAL";
println "Generating Scenario: "+scn_name;
sgen.generateScenario(odiMappingCollection, scn_name, "001"); //**********************************************************
}
tm.commit(txnStatus);
}
catch (Exception e){
println(e);
tm.rollback(txnStatus);
println "Rolled back"
}
}
genScenario("EDW", "MYGCHR_STG1") //Project Code, Project Folder Name
Generating Scenario: CTRL_SCEN_MAP_PHYSICAL
java.lang.ClassCastException: oracle.odi.domain.runtime.scenario.OdiScenario cannot be cast to com.sunopsis.dwg.dbobj.SnpScen
Rolled back
Script exited.