2010-01-10 2 views
-1

У меня есть веб-приложение Tomcat, которое использует конфигурацию спящего режима, код ниже бесшумно завершается по адресу Configuration cfg = new Configuration(); Журналы Tomcat не выдают никакой ошибки, кроме моей инструкции по отладке прямо там, где она терпит неудачу (BEGIN STATIC !!!). Никакое исключение не выбрасывается.Tomcat webapp молча не работает

Однако, когда я упаковал приложение в банку и запускал тот же самый вызов метода в главном, он преуспевает без ошибок.

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; 
    } 

ответ

0

Попробуйте добавить следующее после другого улова:

catch(Error e){ 
      e.printStackTrace(); 
} 

Вероятно, ошибка была брошена вместо исключения. Тогда, по крайней мере, вы должны получить сообщение об ошибке вместо ничего.

+0

Оказывается, что запись в файл отставала, Exception позже обнаружил исключение, связанное с Hibernate. – user217631

Смежные вопросы