Thanks both. I see the docs for ClassLoader explicitly say that the name parameter for defineClass is "The expected binary name of the class, or null if not known" so that does make sense now. Peter