-1
我有一個Tomcat的Web應用程序使用休眠配置,下面的代碼默默地失敗 在Configuration cfg = new Configuration();
Tomcat日誌沒有給出任何錯誤,除了我的調試語句正好在下面它失敗(BEGIN STATIC !!!)。沒有例外被拋出。Tomcat的webapp默默地失敗
但是,當我將應用程序打包到一個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;
}
事實證明,日誌記錄到文件是滯後的,異常後來出現了一個Hibernate相關的異常。 – user217631 2010-01-10 09:09:36