下面是我的 Java 文件中的代码片段,但是在打印 label:1 之后,它给了我异常。
try{
logger.debug(Logger.formatLog("label:1"));
org.hibernate.cfg.Configuration con = new Configuration();
logger.debug(Logger.formatLog("label:2"));
File hiberConfFile=new File("/cfg/hibernate/hibernate.cfg.xml");
//I am on Unix Env and directory structure is RUN/cfg and RUN/lib and my java file is in lib dir ,However I have not got any kind of parsing or FileNotfoundException.
logger.debug(Logger.formatLog("label:3"));
con.configure(hiberConfFile);
logger.debug(Logger.formatLog("label:4"));
con.setProperty(USERNAME, dbInfo.getUsername());
logger.debug(Logger.formatLog("UserName:" + con.getProperty(USERNAME)));
con.setProperty(PASSWORD, dbInfo.getPassword());
logger.debug(Logger.formatLog("PASSWORD:" + con.getProperty(PASSWORD)));
con.setProperty(URL, ORACLE+dbInfo.getHost()+":"+dbInfo.getPort()+":"+dbInfo.getSid());
logger.debug(Logger.formatLog("Connection URL:" + con.getProperty(URL)));
factory =con.configure("hibernate.cfg.xml");
serviceRegistry = new ServiceRegistryBuilder().applySettings(con.getProperties()).buildServiceRegistry();
factory = con.buildSessionFactory(serviceRegistry);
factory=con.buildSessionFactory();
Session session = factory.openSession();
Transaction tx = session.beginTransaction();
results = session.createQuery(query).list();
tx.commit();
}catch (Throwable ex) {
logger.debug(Logger.formatLog(("Initial SessionFactory creation failed." + ex)));
ex.getCause().printStackTrace();
}
在标签之后在 Hibernates 中创建配置对象之前出现以下错误:1 Initial SessionFactory creation failed.java.lang.ExceptionInInitializerError cCSCDDDBConnector.sendQuery.173
java.lang.NullPointerException 在 org.hibernate.cfg.Environment.(Environment.java:221) 在 org.hibernate.cfg.Configuration.reset 在 org.hibernate.internal.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:170) (Configuration.java:300) 在 org.hibernate.cfg.Configuration.(Configuration.java:266) 在 org.hibernate.cfg.Configuration.(Configuration.java:270) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method ) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 sun .rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305) 在 sun.rmi.transport.Transport$1.run(Transport.java:159) 在 sun.rmi.transport.Transport.serviceCall(Transport.java:155) 在 sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535) 的 java.security.AccessController.doPrivileged(Native Method)在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649) 在 java.util.concurrent.ThreadPoolExecutor $Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java:619)handleMessages(TCPTransport.java:535) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java :619)handleMessages(TCPTransport.java:535) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java :619)线程运行(线程.java:619)线程运行(线程.java:619)
任何人都可以帮我解决这个问题吗?