public class EntityMetaData implements SessionFactoryBuilderFactory {
// private static final ThreadLocal<MetadataImplementor> meta = new ThreadLocal<>(); // previously used, but did not work, so used HashMap
private static final Map<String, MetadataImplementor> meta = new HashMap<>();
private static final String METADATAKEY = "M";
@Override
public SessionFactoryBuilder getSessionFactoryBuilder(MetadataImplementor metadata, SessionFactoryBuilderImplementor defaultBuilder) {
// meta.set(metadata);
meta.put(METADATAKEY, metadata);
return defaultBuilder;
}
public static MetadataImplementor getMeta() {
// return meta.get();
return meta.get(METADATAKEY);
}
}
Le code ci-dessus fonctionne dans tomcat 8 de l'environnement local, mais dans tomcat 8 de l'environnement de production ne fonctionne pas comme getMeta()
méthode retourne null.Migration de mise en veille prolongée 3 à hiberner 5: sessionFactory (MetadataImplementor) est nulle
Dans l'environnement local, la méthode getSessionFactoryBuilder
est appelée alors que le serveur est de commencer afin qu'il travaille en local, mais dans la méthode environnement de production getSessionFactoryBuilder
pas appelé ainsi getMeta()
retours null
.
Toute aide pourrait être appréciée.
S'il vous plaît aidez-moi à ce sujet.
S'il vous plaît, quelqu'un peut m'aider à ce sujet .. C'est un problème de «production». – AppHouze