Eu tive o mesmo problema com um aplicativo Play 2.4. Para mim, isso funcionou:
// Overwrite objectFactorys ClassLoader Method to use Plays ClassLoader
// This prevents the log from beeing spammed with Warning-Messages about ClassNotFoundExceptions happening in Morphias objectFactory
morphia.getMapper().getOptions().setObjectFactory(new DefaultCreator() {
@Override
protected ClassLoader getClassLoaderForClass() {
if(Play.maybeApplication().isDefined()) {
return Play.classloader(Play.maybeApplication().get());
} else {
return PersistedObject.class.getClassLoader();
}
}
});
Não conheço JavaEE muito bem, mas eles também têm seus próprios paradigmas de carregamento de classe que você precisa levar em consideração. Espero que ajude.