У меня есть веб-приложение Tomcat, которое использует конфигурацию гибернации, код ниже молча завершается сбоем
в Configuration cfg = new Configuration();
Журналы Tomcat не выдают никаких ошибок, кроме моего оператора отладки чуть ниже, где он терпит неудачу (BEGIN STATIC !!!). Исключение не выбрасывается.
Однако, когда я упаковал приложение в jar-файл и выполнил тот же самый вызов метода в main, оно прошло без ошибок.
public class Manager {
static Logger log = Logger.getLogger(Manager.class);
public static SessionFactory sessionFactory;
public static void main(String[]args){
System.out.println(getSessionFactory());
}
public static SessionFactory getSessionFactory(){
if(sessionFactory==null){
System.out.println("BEGIN STATIC!!!!!!!! ");
try{
Configuration cfg = new Configuration(); //FAILS SILENTLY
System.out.println("BEGIN STATIC1"); //NOT PRINTED THEREAFTER
cfg.configure("hibernate_xxx.xml");
System.out.println("BEGIN STATIC2");
cfg.addResource("xxx/persistence/xxx.xml");
System.out.println("BEGIN STATIC 3");
cfg.addResource("xxx/persistence/xxx.hbm.xml");
cfg.addResource("xxx/persistence/xxx.hbm.xml");
sessionFactory = cfg.buildSessionFactory();
}catch(Exception exp){
System.out.println("ERROR");
exp.printStackTrace(System.out);
}
System.out.println("END STATIC ");
}
return sessionFactory;
}