[jboss-user] [Javassist Users] - Bytecode error loading class

maltaweel do-not-reply at jboss.com
Tue Nov 24 19:39:36 EST 2009


Hi,

I am loading classes via javassist and everything works fine when i run processes on one node.

However, I am now running my javassist code using a distributed process.

I have this code:

________________________________________________________
ClassPool pool = ClassPool.getDefault();
CtClass clazz = pool.makeClass("repast.simphony.util.bytecode.__DataSource" + counter++);
      clazz.addInterface(pool.get("repast.simphony.util.bytecode.DataSource"));
      StringBuilder methodStr = new StringBuilder("public Object getData(Object obj) {return ");

_____________________________________________________________

In the distributed mode I get an error stating:

javassist.NotFoundException: repast.simphony.util.bytecode.__DataSource0
	at javassist.ClassPool.get(ClassPool.java:436)
	at repast.simphony.util.bytecode.ByteCodeUtilities.createMethodCall(ByteCodeUtilities.java:74)
	at repast.simphony.data.logging.gather.MethodMapping.initDataSource(MethodMapping.java:48)
	at repast.simphony.data.logging.gather.MethodMapping.getColumnValue(MethodMapping.java:71)
	at repast.simphony.data.logging.gather.aggregate.AbstractStatsAggregateMapping.getStats(AbstractStatsAggregateMapping.java:44)
________________________________________________________

So it seems that the DataSource class that I can make in one node is not able to be made in the other (remote) node. Is there something I should do to enable the class to be distributed and loaded across nodes?

Thanks for your help.

 


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

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



More information about the jboss-user mailing list