I have a framework that generates a class implementing a specified interface 
for populating javabean properties. I have the following code:

ClassPool pool   = ClassPool.getDefault();
pool.insertClassPath( new ClassClassPath(PropertyPopulator.class) );
Loader  loader = new Loader( PropertyPopulator.class.getClassLoader(), pool );
    
CtClass   cc     = pool.makeClass( "org.aom.chameleon.utils." + 
mapping.getName().replace( ' ', '_' ) + "Populator" );
loader.delegateLoadingOf( "org.aom.chameleon.utils.PropertyPopulator" );        
        
loader.delegateLoadingOf( mapping.getEntityClass() );

cc.setSuperclass( pool.get( "org.aom.chameleon.utils.PropertyPopulator" ) );

and all of this compiles and returns the generated class just fine. The problem 
is that the generated class casts an object supplied to it to a specific class 
and then invokes the various setXXX() methods on it. The object that is being 
cast however implements several interfaces and extends a class (it is a JAXB 
generated class), and the error I'm getting is:

class com.uuic.ets.common.organization.impl.OrgUnitImpl does not implement 
interface com.uuic.ets.common.organization.OrgUnitType]: 
java.lang.IncompatibleClassChangeError: class 
com.uuic.ets.common.organization.impl.OrgUnitImpl does not implement interface 
com.uuic.ets.common.organization.OrgUnitType

The class being cast to is an OrgUnit which extends OrgUnitType (both 
interfaces) with the implementing class being the OrgUnitImpl. I am running 
this in WebSphere 5.1, so I am assuming this is some kind of classloading 
problem with the webcontainer. I have tried casting it directly to the impl 
class with no success as well as chaning the classloader structure via the 
websphere admin console.

I suppose I could overcome this via reflection, but the whole point of it was 
to get away from the overhead of reflection so I don't want to go that route.

Any other thoughts here?

Thanks...

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3871038#3871038

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3871038


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
JBoss-user mailing list
JBoss-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to