[jboss-user] [Javassist] - Using personnal type : no such class

Jérémie Salvucci do-not-reply at jboss.com
Mon Nov 8 04:56:28 EST 2010

Jérémie Salvucci [http://community.jboss.org/people/vanished_man] created the discussion

"Using personnal type : no such class"

To view the discussion, visit: http://community.jboss.org/message/569925#569925

Hello all,

I'm trying to use javassist to create a new class at the execution.

I have a class named TranslatorConstructor and this one should create a class Translator. This class is composed of a field. This field is of IBinaryOutputFile type (personnal one). So when I get ClassPool thanks to ClassPool.getDefault, I do pool.importPackage with my own package "tools.IBinaryOutputFile". The problem is that doesn't work... Even if I use a class BinaryOutputFile and not an interface...

I'm using eclipse and I configure my project with javassist as an external jar. I'm  wondering if it was a good idea because I don't know how javassist does to find my class...

public TranslatorConstructor (String className) {
        ClassPool pool = ClassPool.getDefault();
        clazz = pool.makeClass(className);

public void init () throws CannotCompileException {
        String fieldName = "private IBinaryOuputFile binaryFile;";
        CtField field = CtField.make(fieldName, clazz);

When I create the field, an exception occured...

clazz is a class field a TranslatorConstructor affected in the constructor with makeClass.

If anyone has an idea about why it doesn't work, it would be great.

Thank you !


Reply to this message by going to Community

Start a new discussion in Javassist at Community

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20101108/2969dda7/attachment-0001.html 

More information about the jboss-user mailing list